Запись с такими ключевыми полями существует!
☑
0
Gsoom2010
11.01.12
✎
16:13
Добрый день.
Всё довольно просто, но найти решение в интернете не получается.
Из документа идёт запись в регистр сведений.
Регистр сведений Периодический (по позиции регистратора), зависимый.
Процедура проведения простая:
Движения.РегистрПеремещений.Записывать = Истина;
Движение = Движения.РегистрПеремещений.Добавить();
Движение.Период = Дата;
Движение.ГрузоваяНакладная = Ссылка;
Движение.Подразделение = СоздавшееПодразделение;
Движение.Статус = Перечисления.СтатусыПеремещений.Принят;
Проблема в том что при изменении документа и его повторном проведении выдаётся естественная ошибка "Запись с такими ключевыми полями существует!". Как обработать такую "ошибку"?
1
GLazNik
11.01.12
✎
16:14
Очистить движения?
2
Gsoom2010
11.01.12
✎
16:23
Наверное так выйдет. Попробую.
3
Gsoom2010
11.01.12
✎
16:28
(1) Спасибо! Сделал так:
Если Движения.Найти("РегистрПеремещений") = Неопределено тогда
Движения.РегистрПеремещений.Записывать = Истина;
Движение = Движения.РегистрПеремещений.Добавить();
Движение.Период = Дата;
Движение.ГрузоваяНакладная = Ссылка;
Движение.Подразделение = СоздавшееПодразделение;
Движение.Статус = Перечисления.СтатусыПеремещений.Принят;
Сообщить("Провели Движения");
Иначе
Сообщить("Перепроводка. Не обрабатываем");
КонецЕсли;
Вдруг у кого-нибудь тоже будет тупняк...
4
Maxus43
11.01.12
✎
16:31
(3) очищай движения перед проведением, не думай даже перепроведение это или нет
5
Humandra
11.01.12
✎
16:32
(3) Вот это точно косяк будет!
Можешь получить расхождение между регистром и документом.
6
andrewks
11.01.12
✎
16:32
(3) а если что-то поменяли?
7
Gsoom2010
11.01.12
✎
16:32
Как предлагаете делать?
8
Мизантроп
11.01.12
✎
16:33
"Удалять движения автоматически"
9
Gsoom2010
11.01.12
✎
16:43
(8) Извиняюсь за тупняк.
Понял о чём вы говорите.
Поставил Документу в свойствах Движений параметр Удаление движений: "Удалять автоматически".
Спасибо. Пойду просплюсь.
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший