Имя: Пароль:
1C
 
Документ не делает движений по регистру накоплений. Почему?
,
0 evorle145
 
24.08.18
16:09
Создал в рознице 1 два документа. Заказ покупателя и Снятие резерва.
Записываю движения по регистру накопления:

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


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

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

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

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

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

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