Вход | Регистрация

1С:Предприятие ::

Метки: 

Документ не делает движений по регистру накоплений. Почему?

Я
   evorle145
 
24.08.18 - 16:09
Создал в рознице 1 два документа. Заказ покупателя и Снятие резерва.
Записываю движения по регистру накопления:

    // Регистр заказы покупателей

    Если НЕ Отказ Тогда
        
        НаборДвижений   = Движения.ЗаказыПокупателей;
        ТаблицаДвижений = НаборДвижений.ВыгрузитьКолонки();
        ОбщегоНазначения.ЗагрузитьВТаблицуЗначений(ТаблицаПоТоварам, ТаблицаДвижений);
        НаборДвижений.мПериод          = Дата;
        НаборДвижений.мТаблицаДвижений = ТаблицаДвижений;
        НаборДвижений.ВыполнитьПриход();
        
    КонецЕсли;


В результате по заказу покупателя вижу движения, а по снятию резерва нет! Хотя в отладчике и там и там НаборДвижений заполнен.
Что не так может быть?
 
 
   evorle145
 
1 - 24.08.18 - 16:21
Добавил вот такой строчку:

НаборДвижений.Записывать = Истина;

И заработало. Но! В документе Заказ покупателя без этой строчки все записывается.. как такое может быть?
   vde69
 
2 - 24.08.18 - 16:23
учитесь смотреть свойста метаданных
   evorle145
 
3 - 24.08.18 - 16:27
(2) благодарю! Запись движений при проведении - вот это свойство. Скажите, как вы это запоминаете?
   Cool_Profi
 
4 - 24.08.18 - 16:29
(3) Понять это не возможно, это нужно запомнить )))
   vde69
 
5 - 24.08.18 - 16:29
если память похая-иди работать дворником или токарем... у программиста обязана быть хорошая память
   Вафель
 
6 - 24.08.18 - 16:30
(3) хочешь сказать, что ты это знал, но забыл???
   evorle145
 
7 - 24.08.18 - 16:31
(6) хочу сказать что я это сейчас только узнал, но переживаю что забуду. (5) да, пожалуй надо с этим что-то делать.
   Вафель
 
8 - 24.08.18 - 16:31
(7) вряд ли
   vde69
 
9 - 24.08.18 - 16:32
   evorle145
 
10 - 24.08.18 - 16:34
(9) да, согласен.
Обосрите меня как следует - заслужил.
Вот, я даже вам помогу это сделать:
"(4) столько лет занимаешься 1С при это каждый следующий вопрос тупее предыдущего, ты ведь не хочешь думать (от слова совсем)."
 
 Рекламное место пустует
   Cyberhawk
 
11 - 24.08.18 - 16:35
Кстати а почему разработчики типовых используют эти два разных свойства (причем не расматриваем "ОперацияБух" и им подобные)?
   vde69
 
12 - 24.08.18 - 16:38
(11) по тому, что довольно часто нужны движения у не проведеного документа
   Cyberhawk
 
13 - 24.08.18 - 16:45
Это не отвечает на мой вопрос вообще никак, поскольку такая возможность имеется для любого из двух значений этих свойств
   Cyberhawk
 
14 - 24.08.18 - 16:46
Я тут подумал и пришел к выводу, что, видимо, "ЗаписыватьВыбранные" нужно для точного контроля, а что же будет записываться. Т.к. при значении "ЗаписыватьМодифицированные" будет записано все.
Только и всего.
   Cyberhawk
 
15 - 24.08.18 - 16:47
Но даже и в этом случае мне могут возразить: при использовании "ЗаписыватьМодифицированные" можно вызвать запись не всей коллекции движений в т.н. "единой последовательности", а все равно точечно: Движения.ИмяРегистра.Записать()
   Ботаник Гарден Меран
 
16 - 24.08.18 - 16:53
Есть же ответ программного императора, и думать не надо, только трясти:
"
Это связано с общим изменением рекомендуемой методики проведения документа.

«Записывать модифицированные» было ориентировано на удаление движений в начале проведения. Соответственно, все движения, которые формировались в проведении – записывались.

«Записывать выбранные» ориентировано на то, что в начале проведения движения не удаляются. Разработчик сам устанавливает - по каким регистрам он при проведении формирует движения, а по каким оставляет неизменными. В варианте «Записывать модифицированные» не получалось бы записать пустой набор, так как он бы не модифицировался.

В целом предлагаемая новая методика более эффективна, так как вместо удаления и записи движений используется запись новых движений вместо существующих, и это позволяет платформе записывать только измененные реально движения.
"


Список тем форума
Рекламное место пустует Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует