|
ОШИБКА: В данной транзакции уже происходили ошибки! | ☑ | ||
|---|---|---|---|---|
|
0
jakov
23.03.07
✎
15:24
|
В чем может быть трабла???
При попытке создания нового контрагента, возникает такая ошибки (при записи в БД), при этом если контрагент существует, то его правка, удаление и т.п. ошибок не вызывает.... Пользователь имеет роль, у которой в справочник Контрагентов полный доступ. Спасбо |
|||
|
1
ТелепатБот
гуру
23.03.07
✎
15:24
|
||||
|
2
jakov
23.03.07
✎
16:11
|
Неужели никто не сталкивался????
|
|||
|
3
France
23.03.07
✎
16:11
|
а что там в ПриЗаписи?
|
|||
|
4
jakov
23.03.07
✎
16:13
|
Где это можно уточнить???
|
|||
|
5
jakov
23.03.07
✎
16:15
|
Процедура ПриЗаписи(Отказ)
Если НЕ ОбменДанными.Загрузка Тогда Если НЕ ЗначениеНеЗаполнено(ГоловнойКонтрагент) И ГоловнойКонтрагент <> Ссылка Тогда Если Не ЗначениеНеЗаполнено(ГоловнойКонтрагент.ГоловнойКонтрагент) И ГоловнойКонтрагент.ГоловнойКонтрагент <> ГоловнойКонтрагент Тогда СообщитьОбОшибке("Контрагент "+СокрЛП(ГоловнойКонтрагент)+" не может быть выбран головным, |так как для него уже был назначен головной контрагент "+СокрЛП(ГоловнойКонтрагент.ГоловнойКонтрагент)+"!"); Отказ = Истина; Возврат; Иначе // надо проверить, что если указываем головного контрагента, то этот элемент уже не был установлен // в качестве головного у другого контрагента. ВыборкаПоГоловномуКонтрагенту = ПолучитьКонтрагентовПоЗаданномуГоловномуКонтрагенту(Ссылка).Выбрать(); Если ВыборкаПоГоловномуКонтрагенту.Количество() <> 0 Тогда СообщениеОНевозможностиЗаписи = "Контрагент "+СокрЛП(ЭтотОбъект)+" не может иметь головного контрагента! |Этот контрагент уже установлен головным для: "; Пока ВыборкаПоГоловномуКонтрагенту.Следующий() Цикл СообщениеОНевозможностиЗаписи = СообщениеОНевозможностиЗаписи + Символы.ПС + СокрЛП(ВыборкаПоГоловномуКонтрагенту.Контрагент); КонецЦикла; СообщитьОбОшибке(СообщениеОНевозможностиЗаписи); Отказ = Истина; Возврат; КонецЕсли; КонецЕсли; КонецЕсли; Если НЕ ЗначениеНеЗаполнено(мОснование) Тогда НаборЗаписей = РегистрыСведений.СобственныеКонтрагенты.СоздатьНаборЗаписей(); ЗаписьРегистра = НаборЗаписей.Добавить(); ЗаписьРегистра.Контрагент = Ссылка; ЗаписьРегистра.ВидСвязи = Перечисления.ВидыСобственныхКонтрагентов.Организация; ЗаписьРегистра.Объект = мОснование; НаборЗаписей.Записать(Ложь); мОснование = ""; КонецЕсли; ЗаполнитьНаборПравамиДоступаУнаследованымиОтРодителя(мПраваДоступаПользователей, Родитель, Ссылка); НеобходимоПереписыватьПодчиненных = ПроверитьНеобходимостьПереписыватьПраваДоступаДляПодчиненныхЭлементов(Ссылка, мПраваДоступаПользователей); ЗаписатьПраваДоступаКОбъекту(мПраваДоступаПользователей, Ссылка, Отказ); Если НеобходимоПереписыватьПодчиненных И НЕ Отказ Тогда УстановитьПраваДоступаДляПодчиненныхЭлементов(Ссылка, ЭтотОбъект.Метаданные().Имя, Отказ); КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
|
6
jakov
23.03.07
✎
16:20
|
Вот еще что важно, все это делалось след образом:
- создалась пустая (тестовая) БД конфигурация из шаблона, в которую была перенесена рабочая БД. - в тестовой БД, создана новая роль, отлажена конфа - все работает - конфа была перенесена в рабочую БД, где стала возникать ошибка. |
|||
|
7
dimoff
23.03.07
✎
16:22
|
Когда в транзакции происходит больше одной ошибки в вызываемых функциях и процедурах - пишется подобное сообщение. Зайди в отладчик и погуляй по процедуре через F11
|
|||
|
8
jakov
23.03.07
✎
16:31
|
спасибо, попробую... однако ставлю "Полные права", все нормально работает.... не могу локализовать ошибку пока
|
|||
|
9
France
23.03.07
✎
16:36
|
возможно дело в том, что при записи в регистр сведений запись откатывается с ошибкой.. и этой ошибки достаточно, чтобы неудачно завершилась запись элемента справочника... так что, порой, что там с записью в регистр сведений.
|
|||
|
10
jakov
23.03.07
✎
16:56
|
Еще раз пасиб...
|
|||
|
11
jakov
23.03.07
✎
23:21
|
Удалось решить проблему.
Видимо это трабла 1С_v8. На группу "Покупатели" стояло ограничение некоего Пользователя, этих ограничений в Справочнике пользователей Конфигурации "Торговля" видно не было (удалить пользователя не удавалось из-за ошибки)... После удаления этого пользователя в Конфигураторе, в конфигурации "Торговля" для данного пользователя появились непонятные ограничения область данных для которых была пуста (отсюда и ошибка). Удаление этих ограничений и последующее удаление пользователя, решило проблему для записи в справочник "Контрагентов" всех остальных пользователей. Артефакты какие-то.... |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |