Имя: Пароль:
1C
1С v8
Установка Субконто при проведении
0 plur
 
19.02.18
22:01
В подписке на событие "ОбратботкаПроведения" док-т "Списание товаров" пишу:

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

Счет пишется, а вид субконто - нет.
Пробовал и через "общий модуль-определить субконто по счету" и... как только не пробовал...
Что не нравится 1С-ине? Как правильно писать при проведении вид субконто и сам субконто? В "Источнике" эти данные есть
1 Cyberhawk
 
19.02.18
22:18
"Стр.ВидСубконтоДт1 = ТипЗнч(Источник.Субконто1)" // Открой СП, сравни тип возвращаемого значения метода ТипЗнч с типом ВидСубконтДт1
2 plur
 
19.02.18
22:33
(1) Спасибо. Но теперь другой вопрос)
Получаю субконто:

ВидСубконтоБУ1 = ПланыСчетов.Хозрасчетный.НайтиПоКоду(Источник.КоррСчет.код).ВидыСубконто.Получить(0).ВидСубконто;

Для Каждого Стр Из ВремТЗ Цикл
        Стр.ВидСубконтоДт1 = ВидСубконтоБУ1;

В ТЗ заполняется субконто, но в проводках его все равно нет.
3 plur
 
19.02.18
22:37
Кстати заодно спрошу.
http://rgho.st/6RMXtmFtx
В документе 2 товара, в ТЗ - 2 товара, откуда вылезает третья проводка в журнале (явно сумма первых двух) если движения очищаются?
4 plur
 
19.02.18
23:33
(3) Последний вопрос снят, сам затупил.
(2) Буду признателен за совет.
5 Cyberhawk
 
19.02.18
23:36
(4) Выгрузи какие-нибудь существующие и правильные движения в ТЗ и сравни эту ТЗ с той, что ты загружаешь в твой набор записей
6 Cyberhawk
 
19.02.18
23:37
Ну и не забывай, что у движений объекта надо снять флаг "Записывать" после того, как ты записал независимый НЗ, а то движения объекта в конце транзакции запишутся и перезапишут твой НЗ...
7 Cyberhawk
 
19.02.18
23:38
(ну это не для всех случаев верно, но скорее всего у тебя оно так)
8 h-sp
 
19.02.18
23:41
(4) сравни слова "ВидСубконто" и "Субконто". И подумай.
9 plur
 
19.02.18
23:52
(5) (6) (7) Спасибо, разобрался, все работает!
10 Cyberhawk
 
19.02.18
23:52
(9) В чем дело было?
11 plur
 
20.02.18
00:11
(3) НаборЗаписейБУ.Загрузить(ВремТЗ); перенес за цикл, пропала третья запись в журнале.
(2) помогло (5), все дело оказалось в том что субконто не соответствовали счету, т.е. код из (0) рабочий, просто мне пора поспать :)
Спасибо за помощь.
12 h-sp
 
20.02.18
05:52
(11) что-то вы действительно не выспались. Когда субконто не соответствует счету, она спокойно записывает, ей это до лампочки, у вас дело в чем-то другом.