|
Принудительная регистрация движений по документу в плане обмена |
☑ |
0
Анатоль
17.04.15
✎
13:06
|
Есть такой программный код:
ПланыОбмена.ЗарегистрироватьИзменения(УзелОбмена, ДокументСсылка);
Если ДокументСсылка.Проведен Тогда
// теперь нужно зарегистрировать все движения документа
ДокОбъект = ДокументСсылка.ПолучитьОбъект();
Для Каждого ТаблицаДвижений из ДокОбъект.Движения Цикл
ТаблицаДвижений.Прочитать();
// здесь получаем набор записей регистра с установленным отбором по регистратору
Если ТаблицаДвижений.Количество() > 0 Тогда
ПланыОбмена.ЗарегистрироватьИзменения(УзелОбмена, ТаблицаДвижений);
КонецЕсли;
КонецЦикла;
КонецЕсли;
проблема в том, что регистрируются не все записи по документу, а только одна - первая
где я ошибся?
|
|
1
Анатоль
17.04.15
✎
13:06
|
релиз 1С:Предприятие 8.2 (8.2.19.83)
|
|
2
Torquader
17.04.15
✎
13:48
|
Так по регистру, насколько я помню, каждую запись отдельно нужно регистрировать - иначе там какие-то проблемы с отбором потом.
|
|
3
Анатоль
17.04.15
✎
13:50
|
(2) Когда я пытался каждую запись в отдельности регистрировать как раз и были проблемы с отбором :)
|
|
4
Анатоль
17.04.15
✎
13:53
|
ТаблицаДвижений - имеет тип Набор записей с установленным отбором по регистратору. По документации вроде так и должно быть.
|
|
5
Анатоль
17.04.15
✎
14:10
|
Разобрался - всё-таки код правильно работает, и всё что надо регистрирует.
|
|
6
Serg_1960
17.04.15
✎
14:19
|
Я бы порекомендовал проверять движения на предмет вхождения в состав плана обмена
ДвиженияДокумента = Объект.Движения;
Для каждого Движение из ДвиженияДокумента цикл
Движение.Прочитать();
Если ПланОбмена.Метаданные().Состав.Содержит(Движение.Метаданные()) Тогда
ПланыОбмена.ЗарегистрироватьИзменения(ПланОбменаВыбор,Движение);
КонецЕсли;
КонецЦикла;
|
|
7
Лефмихалыч
17.04.15
✎
14:21
|
етить, у вас тут накурено!
регистры мигрируюти регистрируются наборами записей, а не отдельными записями. При чем не просто наборами записей. при этом регистры накопления мигрируют наборами с отбором по регистратору, а регистры сведений мигрируют наборами по значениям измерений, у которых установлено свойство "Основной отбор".
|
|
8
Лефмихалыч
17.04.15
✎
14:23
|
так что вот это "проблема в том, что регистрируются не все записи по документу, а только одна - первая " - вранье. Такое технически не возможно.
|
|
9
Анатоль
17.04.15
✎
15:00
|
(7) (8) Полностью согласен. Так всё и происходит.
Меня смутило то, что в зарегистрированных объектах по регистру я видел только один набор записей, а не много записей.
Но уже разобрался
|
|
10
Torquader
17.04.15
✎
15:31
|
Ещё можно открыть консоль запросов и посмотреть, что живёт в таблице регистрации.
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший