создать документ ПКО, а открыть не могу

1. ArCtic 3 23.07.17 21:00 Сейчас в теме
Создаю документ ПКО (программно), при открытии документы - ошибка:
{Документ.ПриходныйКассовыйОрдер.Форма.ФормаДокумента.Форма(609)}: Индекс находится за границами массива
ЭлементыФормы.РасшифровкаПлатежа.ТекущаяСтрока = РасшифровкаПлатежа[0];

Код создания ПКО таков:
				Док=Документы.ПриходныйКассовыйОрдер.СоздатьДокумент();
				Док.ВидОперации = Перечисления.ВидыОперацийПКО.ОплатаПокупателя;
				Док.Дата = ТекущаяДата();
				Док.ВалютаДокумента = Справочники.Валюты.НайтиПоКоду("643");
				Док.Организация = Справочники.Организации.НайтиПоКоду("000000001");
				Док.Контрагент = Справочники.Контрагенты.НайтиПоКоду(ДБФ.Kod);
				Док.ДоговорКонтрагента= Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор с покупателем",,,Справочники.Контрагенты.НайтиПоКоду(ДБФ.Kod));
				Док.КурсДокумента = 1;
				Док.КратностьДокумента = 1;
				Док.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
				Док.СтатьяДвиженияДенежныхСредств = Справочники.СтатьиДвиженияДенежныхСредств.НайтиПоКоду("000000002");
				Док.Касса = Справочники.Кассы.НайтиПоКоду("000000001");
				Док.СуммаДокумента = ДБФ.dolg;
				Док.ОтражатьВБухгалтерскомУчете = Истина;
				Док.ОтражатьВНалоговомУчете = Истина;
				Док.ОтражатьВУправленческомУчете = Истина;
				Док.РасшифровкаПлатежа.Свернуть("ДоговорКонтрагента, Сделка, КурсВзаиморасчетов, СуммаПлатежа, КратностьВзаиморасчетов, СуммаВзаиморасчетов, СтавкаНДС, СуммаНДС, СтатьяДвиженияДенежныхСредств, ДокументПланированияПлатежа, Проект, КурсВзаиморасчетовПлан, СуммаПлатежаПлан, ДокументРасчетовСКонтрагентом, ПризнакСпособаРасчета","");
				Док.ОтраженоВОперУчете = Истина;
				Док.Оплачено = Истина;
				Док.Комментарий = "Ввод остатков";
				Док.Записать();//РежимЗаписиДокумента.Проведение);
Показать

что упускаю?
По теме из базы знаний
Найденные решения
2. Dream_kz 129 23.07.17 21:14 Сейчас в теме
(1) В ТЧ РасшифровкаПлатежа должны быть записи, и правильно их добавлять туда, а не в шапку документа
3. ArCtic 3 23.07.17 21:21 Сейчас в теме
(2)
				Док=Документы.ПриходныйКассовыйОрдер.СоздатьДокумент();
				Док.ВидОперации = Перечисления.ВидыОперацийПКО.ОплатаПокупателя;
				Док.Дата = ТекущаяДата();
				Док.ВалютаДокумента = Справочники.Валюты.НайтиПоКоду("643");
				Док.Организация = Справочники.Организации.НайтиПоКоду("000000001");
				Док.Контрагент = Справочники.Контрагенты.НайтиПоКоду(ДБФ.Kod);
				Док.ДоговорКонтрагента= Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор с покупателем",,,Справочники.Контрагенты.НайтиПоКоду(ДБФ.Kod));
				Док.КурсДокумента = 1;
				Док.КратностьДокумента = 1;
				Док.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
				Док.СтатьяДвиженияДенежныхСредств = Справочники.СтатьиДвиженияДенежныхСредств.НайтиПоКоду("000000002");
				Док.Касса = Справочники.Кассы.НайтиПоКоду("000000001");
				Док.СуммаДокумента = ДБФ.dolg;
				Док.ОтражатьВБухгалтерскомУчете = Истина;
				Док.ОтражатьВНалоговомУчете = Истина;
				Док.ОтражатьВУправленческомУчете = Истина;
				//Док.РасшифровкаПлатежа.Свернуть("ДоговорКонтрагента, Сделка, КурсВзаиморасчетов, СуммаПлатежа, КратностьВзаиморасчетов, СуммаВзаиморасчетов, СтавкаНДС, СуммаНДС, СтатьяДвиженияДенежныхСредств, ДокументПланированияПлатежа, Проект, КурсВзаиморасчетовПлан, СуммаПлатежаПлан, ДокументРасчетовСКонтрагентом, ПризнакСпособаРасчета","");
				Док.ОтраженоВОперУчете = Истина;
				Док.Оплачено = Истина;
				Док.Комментарий = "Ввод остатков";
				ТЧ = Док.РасшифровкаПлатежа.Добавить();
				ТЧ.ДоговорКонтрагента = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор с покупателем",,,Справочники.Контрагенты.НайтиПоКоду(ДБФ.Kod));
				ТЧ.КратностьВзаиморасчетов =1;
				ТЧ.КурсВзаиморасчетов = 1;
				ТЧ.ПризнакСпособаРасчета = Перечисления.ПризнакиСпособаРасчета.Аванс;
				ТЧ.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
				ТЧ.СуммаВзаиморасчетов = ДБФ.dolg;
				ТЧ.СуммаПлатежа = ДБФ.dolg;
				Док.Записать();//РежимЗаписиДокумента.Проведение);
Показать

Помогло - спасибо!
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Dream_kz 129 23.07.17 21:14 Сейчас в теме
(1) В ТЧ РасшифровкаПлатежа должны быть записи, и правильно их добавлять туда, а не в шапку документа
3. ArCtic 3 23.07.17 21:21 Сейчас в теме
(2)
				Док=Документы.ПриходныйКассовыйОрдер.СоздатьДокумент();
				Док.ВидОперации = Перечисления.ВидыОперацийПКО.ОплатаПокупателя;
				Док.Дата = ТекущаяДата();
				Док.ВалютаДокумента = Справочники.Валюты.НайтиПоКоду("643");
				Док.Организация = Справочники.Организации.НайтиПоКоду("000000001");
				Док.Контрагент = Справочники.Контрагенты.НайтиПоКоду(ДБФ.Kod);
				Док.ДоговорКонтрагента= Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор с покупателем",,,Справочники.Контрагенты.НайтиПоКоду(ДБФ.Kod));
				Док.КурсДокумента = 1;
				Док.КратностьДокумента = 1;
				Док.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
				Док.СтатьяДвиженияДенежныхСредств = Справочники.СтатьиДвиженияДенежныхСредств.НайтиПоКоду("000000002");
				Док.Касса = Справочники.Кассы.НайтиПоКоду("000000001");
				Док.СуммаДокумента = ДБФ.dolg;
				Док.ОтражатьВБухгалтерскомУчете = Истина;
				Док.ОтражатьВНалоговомУчете = Истина;
				Док.ОтражатьВУправленческомУчете = Истина;
				//Док.РасшифровкаПлатежа.Свернуть("ДоговорКонтрагента, Сделка, КурсВзаиморасчетов, СуммаПлатежа, КратностьВзаиморасчетов, СуммаВзаиморасчетов, СтавкаНДС, СуммаНДС, СтатьяДвиженияДенежныхСредств, ДокументПланированияПлатежа, Проект, КурсВзаиморасчетовПлан, СуммаПлатежаПлан, ДокументРасчетовСКонтрагентом, ПризнакСпособаРасчета","");
				Док.ОтраженоВОперУчете = Истина;
				Док.Оплачено = Истина;
				Док.Комментарий = "Ввод остатков";
				ТЧ = Док.РасшифровкаПлатежа.Добавить();
				ТЧ.ДоговорКонтрагента = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор с покупателем",,,Справочники.Контрагенты.НайтиПоКоду(ДБФ.Kod));
				ТЧ.КратностьВзаиморасчетов =1;
				ТЧ.КурсВзаиморасчетов = 1;
				ТЧ.ПризнакСпособаРасчета = Перечисления.ПризнакиСпособаРасчета.Аванс;
				ТЧ.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
				ТЧ.СуммаВзаиморасчетов = ДБФ.dolg;
				ТЧ.СуммаПлатежа = ДБФ.dolg;
				Док.Записать();//РежимЗаписиДокумента.Проведение);
Показать

Помогло - спасибо!
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот