Имя: Пароль:
1C
1С v8
КД2 перенос перенос проводок с субконто из 7.7 в 8.2
0 krasnodar95
 
17.05.13
08:30
У Бояркина нашел похожую задачу где переносится док. операция из 77 в 82. Мне же нужно перенести док БухСправку 77 в ОперацияБух 82.
1) Создал ПКО Хозрасчетный Для плана счетов а в нем для каждого счета сделал ПКЗ.
2)Создал ПКО БухСправка>ОперацияБух, и прописал в обработчике "После загрузки":
Объект.Движения.Хозрасчетный.Записывать=Истина;
3)Создал ПКСы шапки, тут все просто
4)Создал ПКГС с пустым источником а приемником поставил Хозрасчетный
    В обработчик "Перед обработкой" написал из Бояркина:
КоллекцияОбъектов=СоздатьОбъект("ТаблицаЗначений");
КоллекцияОбъектов.НоваяКолонка("СубконтоДт");
КоллекцияОбъектов.НоваяКолонка("СубконтоКт");
КоллекцияОбъектов.НоваяКолонка("СчетДт");
КоллекцияОбъектов.НоваяКолонка("СчетКт");
КоллекцияОбъектов.НоваяКолонка("Сумма");

Операция=Источник.Операция;
Операция.ВыбратьПроводки();
Пока Операция.ПолучитьПроводку()=1 Цикл
   КоллекцияОбъектов.НоваяСтрока();
   КоллекцияОбъектов.СчетДт=Операция.Дебет.Счет;
   КоллекцияОбъектов.СчетКт=Операция.Кредит.Счет;
   КоллекцияОбъектов.Сумма=Операция.Сумма;
   
   КоллекцияОбъектов.СубконтоДт=СоздатьОбъект("ТаблицаЗначений");
   КоллекцияОбъектов.СубконтоДт.НоваяКолонка("Ключ");
   КоллекцияОбъектов.СубконтоДт.НоваяКолонка("Значение");
   Для НомерСубконто=1 По Операция.Дебет.Счет.КоличествоСубконто() Цикл
       КоллекцияОбъектов.СубконтоДт.НоваяСтрока();
       КоллекцияОбъектов.СубконтоДт.Ключ=Операция.Дебет.Счет.ВидСубконто(НомерСубконто);
       КоллекцияОбъектов.СубконтоДт.Значение=Операция.Дебет.Субконто(НомерСубконто);    
   КонецЦикла;
   
   КоллекцияОбъектов.СубконтоКт=СоздатьОбъект("ТаблицаЗначений");
   КоллекцияОбъектов.СубконтоКт.НоваяКолонка("Ключ");
   КоллекцияОбъектов.СубконтоКт.НоваяКолонка("Значение");
   Для НомерСубконто=1 По Операция.Кредит.Счет.КоличествоСубконто() Цикл
       КоллекцияОбъектов.СубконтоКт.НоваяСтрока();
       КоллекцияОбъектов.СубконтоКт.Ключ=Операция.Кредит.Счет.ВидСубконто(НомерСубконто);
       КоллекцияОбъектов.СубконтоКт.Значение=Операция.Кредит.Субконто(НомерСубконто);    
   КонецЦикла;    
КонецЦикла;
5) Затем внутри этого ПКГС создал ПКСы с пустым источником(счетДт, счетКт, сумма...), для ПКС счетДт и СчетКт указал ПКО Хозрасчетный.

При выгрузке выгружается только шапка, что мне нужно исправить чтобы выгружались еще и проводки с субконто?
1 krasnodar95
 
17.05.13
08:39
И вообще я не совсем понял как работать с КоллекциейОбъектов. При ее формировании она сама будет выгружаться в приемник или нужно в каждом ПКСе вытаскивать из нее значения?
2 krasnodar95
 
17.05.13
08:53
Где то на форуме наткнулся на такую запись в обработчике Перед выгрузкой у ПКСа:
Значение=ОбъектКоллекции.ИмяЭлементаКоллекции;
Написано что эта запись вытаскивает значение из КоллекцииОбъектов сформированной в родительском ПКГСе, но у меня она ниче не вытащила.
3 krasnodar95
 
17.05.13
09:22
Кто нибудь сталкивался?