Здравствуйте, такой вопрос. Делаю обработку для создания документов на основании, возник вопрос в процессе
{ВнешняяОбработка.СоздатьДокументыАВРнаОснованииРеализации.Форма.Форма.Форма(168)}: Метод объекта не обнаружен (ЗаполнитьПоДокументуОснования)
Создается документ реализации, а на основании него должен создаваться документ ЭАВР(Электронный акт выполненных работ), но метод заполнения на основании с электронным документом не находит, процедуры тоже такой не получилось найти. Как можно в такой ситуации реализовать?
&НаСервере
Процедура СоздатьЭлектронныйАктНаСервере()
МассивРеализации = Новый Массив;
Количество = Строка(ДанныеСЧ.Количество());
Сч = 0;
Для каждого СтрокаТЗ Из ДанныеСЧ Цикл
Если не СтрокаТЗ.Пометка Тогда
Продолжить;
КонецЕсли;
Попытка
Если Не ЗначениеЗаполнено(СтрокаТЗ.Реализация) Тогда
ДокуметРеализацияТоваровУслуг = Документы.РеализацияТоваровУслуг.СоздатьДокумент();
ДокуметРеализацияТоваровУслуг.ЗаполнитьПоДокументуОснования(СтрокаТЗ.ДокументСчета);
ДокуметРеализацияТоваровУслуг.Дата = ТекущаяДата();
ДокуметРеализацияТоваровУслуг.СпособВыпискиАктовВыполненныхРабот = Перечисления.СпособыВыпискиАктовВыполненныхРабот.НаПорталеИСЭСФ;
ДокуметРеализацияТоваровУслуг.Записать(РежимЗаписиДокумента.Запись);
СтрокаТЗ.Реализация = ДокуметРеализацияТоваровУслуг.Ссылка;
КонецЕсли;
Исключение
ДокуметРеализацияТоваровУслуг.Записать(РежимЗаписиДокумента.Проведение);
Сообщить(ОписаниеОшибки());
Продолжить;
КонецПопытки;
МассивРеализации.Очистить();
Сч = Сч + 1;
МассивАктов = Новый Массив;
Если не СтрокаТЗ.Пометка Тогда
Продолжить;
КонецЕсли;
Попытка
Если Не ЗначениеЗаполнено(СтрокаТЗ.АВР) Тогда
ДокументЭлектронныйАктВыполненныхРабот = Документы.ЭлектронныйАктВыполненныхРабот.СоздатьДокумент();
ДокументЭлектронныйАктВыполненныхРабот.Дата = ТекущаяДата();
ДокументЭлектронныйАктВыполненныхРабот.Направление = Перечисления.НаправленияЭСФ.Исходящий;
ДокументЭлектронныйАктВыполненныхРабот.ДокументОснование = СтрокаТЗ.Реализация;
ДокументЭлектронныйАктВыполненныхРабот.ЗаполнитьПоДокументуОснования(СтрокаТЗ.Реализация);
ДокументЭлектронныйАктВыполненныхРабот.Записать(РежимЗаписиДокумента.Запись);
СтрокаТЗ.АВР = ДокументЭлектронныйАктВыполненныхРабот.Ссылка;
СтрокаТЗ.ДатаАВР = ДокументЭлектронныйАктВыполненныхРабот.Дата;
СтрокаТЗ.СостояниеАВР = ДокументЭлектронныйАктВыполненныхРабот.Состояние;
КонецЕсли;
Исключение
Сообщить(ОписаниеОшибки());
Продолжить;
КонецПопытки;
КонецЦикла;
КонецПроцедуры
Показать{ВнешняяОбработка.СоздатьДокументыАВРнаОснованииРеализации.Форма.Форма.Форма(168)}: Метод объекта не обнаружен (ЗаполнитьПоДокументуОснования)
Создается документ реализации, а на основании него должен создаваться документ ЭАВР(Электронный акт выполненных работ), но метод заполнения на основании с электронным документом не находит, процедуры тоже такой не получилось найти. Как можно в такой ситуации реализовать?
По теме из базы знаний
- 1С 8.0, 8.1 Обработка по заполнению документов на основании
- Отчет производства за смену для 1С: Бухгалтерии 3.0 - обработка заполнения документа
- Создание и заполнение документа основания программно из модуля формы
- Заполнение документов Премия, Доход в натуральной форме, Материальная помощь, Разовое начисление, Изменение плановых начислений (в части оклада), Удержание по прочим операциям из файла Excel
- Заполнение документа "Сведения об уплате налогов" при УСН
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(7) Просматривала процедуру
Если ДанныеЗаполнения.Свойство("СтруктураДанных") Тогда
ОснованиеДляЗаполнения = ДанныеЗаполнения;
ИначеЕсли ДанныеЗаполнения.Свойство("ДокументОснование") Тогда
ОснованиеДляЗаполнения = ДанныеЗаполнения.ДокументОснование;
Иначе
Возврат;
КонецЕсли;
Пишу так же
ДокументЭлектронныйАктВыполненныхРабот.Заполнить(Документы.РеализацияТоваровУслуг);
Если ДанныеЗаполнения.Свойство("СтруктураДанных") Тогда
ОснованиеДляЗаполнения = ДанныеЗаполнения;
ИначеЕсли ДанныеЗаполнения.Свойство("ДокументОснование") Тогда
ОснованиеДляЗаполнения = ДанныеЗаполнения.ДокументОснование;
Иначе
Возврат;
КонецЕсли;
Пишу так же
ДокументЭлектронныйАктВыполненныхРабот.Заполнить(Документы.РеализацияТоваровУслуг);
(8)
3 варианта - выбери нужный. Там должно быть еще условие типа:
Смотри дальше, как используется переменная ОснованиеДляЗаполнения, чтобы знать как подготовить данные для заполнения.
Если ДанныеЗаполнения.Свойство("СтруктураДанных") Тогда
ОснованиеДляЗаполнения = ДанныеЗаполнения;
ИначеЕсли ДанныеЗаполнения.Свойство("ДокументОснование") Тогда
ОснованиеДляЗаполнения = ДанныеЗаполнения.ДокументОснование;
Иначе
Возврат;
КонецЕсли;
ОснованиеДляЗаполнения = ДанныеЗаполнения;
ИначеЕсли ДанныеЗаполнения.Свойство("ДокументОснование") Тогда
ОснованиеДляЗаполнения = ДанныеЗаполнения.ДокументОснование;
Иначе
Возврат;
КонецЕсли;
3 варианта - выбери нужный. Там должно быть еще условие типа:
Если ТипЗнч(ДанныеЗаполнения) = Тип("Структура") Тогда
Смотри дальше, как используется переменная ОснованиеДляЗаполнения, чтобы знать как подготовить данные для заполнения.
ДанныеЗаполнения=Новый Структура();
ДанныеЗаполнения.Вставить( , );
...
ДокуметРеализацияТоваровУслуг.Заполнить(ДанныеЗаполнения);
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот