Здравствуйте, вопрос такой, не получается получить данные в документ, не отрабатывает строчка "ДокПересчет.Записать()"
Код прилагаю
Код прилагаю
Функция ЗагрузкаДокументовИзТСДReceivedDocument(Запрос)
ДокументыПересчета = "";
Если ЗначениеЗаполнено(Запрос.ПараметрыЗапроса) Тогда
ДокументыПересчета = Запрос.ПолучитьТелоКакСтроку();//Запрос.ПараметрыЗапроса["filter"];
ИмяТемпФайла = ПолучитьИмяВременногоФайла();
ДвоичныеДанные = ПолучитьДвоичныеДанныеИзСтроки(ДокументыПересчета);
ДвоичныеДанные.Записать(ИмяТемпФайла);
ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.ОткрытьФайл(ИмяТемпФайла);
Данные = ПрочитатьJSON(ЧтениеJSON, Ложь);
ЧтениеJSON.Закрыть();
Попытка
ДетальныеДанные = Данные.document;
ВидОперации = Данные.operation;
ДокПересчет = Документы.Инвентаризация.СоздатьДокумент();
ДокПересчет.Дата = ТекущаяДата();
ДокПересчет.Автор = Справочники.Пользователи.НайтиПоНаименованию("");
ДокПересчет.ВалютаДокумента = Справочники.Валюты.НайтиПоНаименованию("");
ДокПересчет.СкладКомпании = Справочники.СкладыКомпании.НайтиПоНаименованию("");
ДокПересчет.Организация = Справочники.Организации.НайтиПоНаименованию("");
ДокПересчет.РежимКорректировкиКоличества = Перечисления.РежимКорректировкиКоличестваВИнвентаризации.КорректироватьКнижноеКоличество;
ДокПересчет.ТипЦен = Справочники.ТипыЦен.НормативнаяЦена;
ДокПересчет.ПодразделениеКомпании = Справочники.ПодразделенияКомпании.НайтиПоНаименованию("");
ДокПересчет.ХозОперация = Справочники.ХозОперации.Инвентаризация;
ДокПересчет.СтатьяОприходованияОбнаруженныхИзлишковТМЦ = Справочники.СтатьиДоходовИРасходов.ОприходованиеОбнаруженныхИзлишковАктивов;
ДокПересчет.СтатьяСписанияОбнаруженнойНедостачиТМЦ = Справочники.СтатьиДоходовИРасходов.СписаниеОбнаруженнойНедостачиТМЦ;
ДокПересчет.УправленческийУчет = Истина;
ДокПересчет.РегламентированныйУчет = Ложь;
ДокПересчет.Проект = Справочники.Проекты.НайтиПоНаименованию("");
ДокПересчет.КурсДокумента = Число("1");
ДокПересчет.КурсВалютыУпр = Число("1");
ДокПересчет.РаспределятьОтрицательныеОстатки = Истина;
ДокПересчет.ЗаполнятьПоСебестоимости = Ложь;
ДокПересчет.НеИзменятьФактПриЗаполнении = Истина;
Для Каждого Эл Из ДетальныеДанные Цикл
Попытка
Номенклатура = НайтиНоменклатуру(Эл.code, Эл.barcode, Эл.plu);
Если ЗначениеЗаполнено(Номенклатура) Тогда
СтрокаТоваров = ДокПересчет.Товары.Добавить();
СтрокаТоваров.Номенклатура = Номенклатура;
СтрокаТоваров.КоличествоИзОписи = Эл.quantity;
Иначе
СтрокаТоваров = ДокПересчет.Товары.Добавить();
СтрокаТоваров.Номенклатура = "";
СтрокаТоваров.КоличествоИзОписи = Эл.quantity;
КонецЕсли;
Исключение
КонецПопытки;
КонецЦикла;
ДокПересчет.Записать();
Ответ = Новый HTTPСервисОтвет(200);
Ответ.Заголовки.Вставить("Content-type", "application/json; charset=utf-8");
Ответ.УстановитьТелоИзСтроки("УспешнаяЗагрузкаДокумента");
Возврат Ответ;
Исключение
Ответ = Новый HTTPСервисОтвет(300);
Ответ.Заголовки.Вставить("Content-type", "application/json; charset=utf-8");
Ответ.ПолучитьТелоКакСтроку().УстановитьТелоИзСтроки(ОписаниеОшибки());
Возврат Ответ;
КонецПопытки;
КонецЕсли;
КонецФункции
ПоказатьПо теме из базы знаний
- Синхронизация хранилища 1С и git-репозитория с применением OneScript и Gitsync. Методика и пошаговая инструкция для создания скрипта и его регулярного запуска
- oData – HTTP-сервис для ленивых.
- Управление сборкой. Расширение для конфигурации СППР
- Рефакторинг и реинжиниринг в повседневной практике
- Интеграция 1С с маркетплейсами из одного окна: Озон, ВБ, Яндекс, Сбер, Али, ЛаМода - для УНФ, УТ, КА, ERP
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот