|
Перепроведение документов | ☑ | ||
---|---|---|---|---|
0
Budulay2018
11.05.16
✎
12:03
|
Здравствуйте.
Можно ли запретить документу формировать движения в определенных регистрах? Т.е. оставить в настройке документа "Движения" только нужные мне регистры, перепровести и вернуть всё взад) Ну, и чем мне это грозит, как обычно. Извините, за возможно глупый вопрос |
|||
1
FIXXXL
11.05.16
✎
12:09
|
(0) обработкой записи формируй и подменяй где надо
|
|||
2
catena
11.05.16
✎
12:09
|
(0)И еще код подчистить, который делает движения в этих регистрах.
Проще программно почистить движения в этих регистрах? Грозит - восстановлением движений при перепроведении. |
|||
3
Budulay2018
11.05.16
✎
12:21
|
(2) Т.е. если убрать регистры в настройках и оставить в модуле, то движения в этих регистрах все равно будут формироваться?
|
|||
4
catena
11.05.16
✎
12:34
|
(3)Нет, проведение будет вылетать с ошибкой.
|
|||
5
Budulay2018
11.05.16
✎
12:36
|
(4) Понятно. Спасибо
|
|||
6
mehfk
11.05.16
✎
12:38
|
(0) Перепроведи на копии, а потом обработкой ВыгрузкаЗагрузкаДанныхXML82.epf перенеси.
|
|||
7
PR пять
11.05.16
✎
12:39
|
(0) :)))
Прикидывал, что выложу эту обработку в магазин (бесплатно) одной из первых :)) Общая идея простая: в транзакции проводится документ, копируются нужные движения в ТЗ, транзакция отменяется, движения пишутся в движения. |
|||
8
catena
11.05.16
✎
12:43
|
(7)Я уже выкладывала подобную обработку...
|
|||
9
PR пять
11.05.16
✎
12:44
|
(8) Куда, на ИСу?
|
|||
10
catena
11.05.16
✎
12:49
|
(9)Проверила - оказывается наврала, только предпросмотр выкладывала (да, на ИС). По той же схеме: транзакция, чтение движений, отмена транзакции. Еще в 2012 году))
|
|||
11
Budulay2018
11.05.16
✎
13:22
|
(7) Полезная штуковина была бы)
|
|||
12
catena
11.05.16
✎
13:34
|
(11)
Процедура ПровестиПоРегистру(ДокСсылка, ИмяРегистра, ТипРегистра) Экспорт ДокОбъект = ДокСсылка.ПолучитьОбъект(); НачатьТранзакцию(); Если ИмяРегистра<>"Типовой" Тогда ПроставитьСтатусПроводок(ДокОбъект,Перечисления.СостоянияДокументов.ПустаяСсылка()); КонецЕсли; ДокОбъект.Записать(РежимЗаписиДокумента.Проведение); ДокОбъект.Движения[ИмяРегистра].Прочитать(); ТаблицаДвиженийРегистра = ДокОбъект.Движения[ИмяРегистра].Выгрузить(); ОтменитьТранзакцию(); Если ТипРегистра = "РегистрыСведений" Тогда НаборЗаписей = РегистрыСведений[ИмяРегистра].СоздатьНаборЗаписей(); ИначеЕсли ТипРегистра = "РегистрыНакопления" Тогда НаборЗаписей = РегистрыНакопления[ИмяРегистра].СоздатьНаборЗаписей(); ИначеЕсли ТипРегистра = "РегистрыБухгалтерии" Тогда НаборЗаписей = РегистрыБухгалтерии[ИмяРегистра].СоздатьНаборЗаписей(); ИначеЕсли ТипРегистра = "РегистрыРасчета" Тогда НаборЗаписей = РегистрыРасчета[ИмяРегистра].СоздатьНаборЗаписей(); Иначе Возврат; КонецЕсли; НаборЗаписей.Отбор.Регистратор.Установить(ДокСсылка); НаборЗаписей.Загрузить(ТаблицаДвиженийРегистра); НаборЗаписей.Записать(); КонецПроцедуры |
|||
13
Serg_1960
11.05.16
✎
13:42
|
Эээ... конфигурация, как всегда не озвучена :(
Если в конфигурации используется РАУЗ, то алгоритма (12) недостаточно. При проведении документа по регистрам РАУЗа надо ещё "отслеживать" создание новых ключей аналитики. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |