Показывать по
10
20
40
сообщений
Новая тема
Ответить
Сергей Интяшев
Дата регистрации: 29.01.2019
Сообщений: 1
Добрый день всем. При создании электронного документа выдает такую ошибку.
1С:Предприятие 8.3 (8.3.12.1685)
Бухгалтерия предприятия, редакция 3.0 (3.0.67.43)
Режим : Серверный, PostgreSQL
Не удается создать электронный документ, выдает ошибку: «Выполнение операции: Заполнение XDTO.
Ошибка установки значения свойства «НалСт».
Подробности см. в журнале регистрации.»
Сообщения из журнала регистрации:
Выполнение операции: Заполнение XDTO.
Ошибка установки значения свойства «НалСт».
{ОбщийМодуль.ОбменСКонтрагентамиВнутренний.Модуль(10673)}: Ошибка при вызове метода контекста (Установить)
ОбъектXDTO.Установить(ИмяСвойства, Значение);
по причине:
Несоответствие типов XDTO
по причине:
Ошибка проверки данных XDTO:
Значение: ‘20%’ не соответствует простому типу:
Значение не соответствует значениям фасета перечисления
————————————————————————————-
Выполнение операции: Формирование ЭД.
{ОбщийМодуль.ОбменСКонтрагентамиВнутренний.Модуль(8390)}: Выполнение операции: Заполнение XDTO.
Ошибка установки значения свойства «НалСт».
ВызватьИсключение ЭлектронноеВзаимодействиеСлужебный.СоединитьОшибки(Ошибки);
Помогите пожалуйста, может кто сталкивался с данной проблемой
Ленар Ленарович
Дата регистрации: 15.03.2019
Сообщений: 1
Нужно обновить 1С до определенного релиза. Для «Бухгалтерия предприятия», редакция 3.0 необходимо обновиться до релиза 3.0.67.67
Показывать по
10
20
40
сообщений
При входе в базу 1с вы можете увидеть “Ошибка преобразования данных XDTO:
Начало Свойства: errorProcessingSettings
Форма: Элемент
Тип: {http://v8.1c.ru/8.2/managed-application/core}ErrorProcessingSettings по причине
Чаще всего ошибка возникает при определенном типе запуска: это либо через тонкий клиент, либо через линк42, случаи бывают разные. Через браузер такие базы запускаются без ошибок.
Есть простое решение данной проблемы.
Достаточно запустить базу доступным нам способом (где нет ошибки) включить Функции тех. специалиста (Меню — Настройки — Параметры — Режим технического специалиста)
В Функциях для технического специалиста ищем Управление настройками обработки ошибок (Стандартные)
Запускаем
Готово!
Уже более 10 000 компаний работают
в облачной 1С от 42Clouds
— Консультация по 1С Бесплатно!
— Поддержка 24/7 по техническим вопросам: в чате, по телефону, по почте
— Все типовые конфигурации онлайн, доступ через RDP, Remote App, Web
Клиент поставил задачу — добавлять в основание документа не только документ но и счет на оплату (основание реализации).
Сначала я смотрю, где выводится основание передачи, там действительно указан договор:
Выгружаю в файл, нахожу, где это в тегах XML:
Запускаем монитор производительности и смотрим, где заполняется ОснПер (ищем поиском в логе кода ОснПер), находим что это процедура ЗаполнитьДокумент_УПД2019_ИнформацияПродавца модуля ФорматыЭДО_ФНС:
Если в отладчике поправить значения:
То можно убедиться, что отображение тоже меняется:
Не хочется добавлять весь длинный код формирования кода ЭДО в директиву «Изменение и контроль». Но тут встречается проблема. В этом длинном коде после окончания формирования нет ни одной функции, куда передавались бы одновременно Документ и ДеревоДанных, увы. Есть только вызов ЗаполнитьСведенияОПодписантах, но он вызывается не всегда (внутри Если):
Сначала я хотел использовать доработки в функцию ПроверитьОбъектXDTO модуля ФорматыЭДО_ФНС, но увы, туда не передается ДеревоДанных.
Поэтому буду использовать свой метод спуска параметра в стек. Сначала я хотел вставить ссылку на документ в дерево данных, как написано в моей статье. Но раз использую параметры сеанса, это уже не требуется (код вставки ссылки в дерево закомментирован):
&Вместо("СформироватьДанныеОсновногоТитулаПоОбъектуУчета") Функция эдоко_СформироватьДанныеОсновногоТитулаПоОбъектуУчета(ОбъектУчета, Настройки, Данные) // https://geniy1s.ru/razbiraem-novoe-edo-ot-1s-v-bp3-iyun-2021/ //Не буду использовать, помещаю сразу в параметры сеанса //Использовать: ТекСсылкаНаОбъект = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(ДеревоДанных, "дор_ОбъектУчета"); //НСтр = Данные.ДанныеДокумента.Строки.Добавить(); //НСтр.ПолныйПуть = "дор_ОбъектУчета"; //НСтр.Значение = ОбъектУчета; УстановитьПривилегированныйРежим(Истина); //Чтобы работать с параметров сеанса, на который не назначены права ПараметрыСеанса.эдоко_ДанныеДляЗаполнения = Новый ФиксированнаяСтруктура(); //Очищаем Если ТипЗнч(ОбъектУчета) = Тип("ДокументСсылка.РеализацияТоваровУслуг") Тогда Если ЗначениеЗаполнено(ОбъектУчета.СчетНаОплатуПокупателю) Тогда Структура = Новый Структура(); Номер = ""; ЭлектронноеВзаимодействиеПереопределяемый.ПолучитьПечатныйНомерДокумента(ОбъектУчета.СчетНаОплатуПокупателю, Номер); Дата = Формат(ОбъектУчета.СчетНаОплатуПокупателю.Дата, "ДФ=dd.MM.yyyy"); Структура.Вставить("Номер", Номер); Структура.Вставить("Дата", Дата); Структура.Вставить("Представление", "Счет на оплату № " + Номер + " от " + Дата); ПараметрыСеанса.эдоко_ДанныеДляЗаполнения = Новый ФиксированнаяСтруктура(Структура); КонецЕсли; КонецЕсли; Результат = ПродолжитьВызов(ОбъектУчета, Настройки, Данные); //формирвоание титула после добавления ссылки, т.к. там все и происходит Возврат Результат; КонецФункции
К тому же, этот код будет работать намного дольше и в разных релизах, т.к. не привязан к длинному исходному коду через «Изменение и контроль».
Теперь осталось только добавить элемент в список оснований:
&Вместо("ПроверитьОбъектXDTO") Функция эдоко_ПроверитьОбъектXDTO(Знач ОбъектXDTO, Ошибки) //Добавляем УстановитьПривилегированныйРежим(Истина); //Чтобы работать с параметров сеанса, на который не назначены права Если ТипЗнч(ПараметрыСеанса.эдоко_ДанныеДляЗаполнения) = Тип("ФиксированнаяСтруктура") Тогда ДопДанные = Новый Структура(ПараметрыСеанса.эдоко_ДанныеДляЗаполнения); Номер = ""; Дата = ""; Представление = ""; Если ДопДанные.Свойство("Представление", Представление) И ДопДанные.Свойство("Дата", Дата) И ДопДанные.Свойство("Номер", Номер) Тогда Попытка СписокXDTO = ОбъектXDTO.Получить("Документ/СвПродПер/СвПер").ПолучитьСписок("ОснПер"); ПространствоИмен = ПространствоИмен_УПД2019_ИнформацияПродавца(); ОснПер = ПолучитьОбъектТипаCML("Файл.Документ.СвПродПер.СвПер.ОснПер", ПространствоИмен); ОснПер.НаимОсн = Представление; ОснПер.НомОсн = Номер; ОснПер.ДатаОсн = Дата; СписокXDTO.Добавить(ОснПер); Исключение КонецПопытки; КонецЕсли; КонецЕсли; Результат = ПродолжитьВызов(ОбъектXDTO, Ошибки); Возврат Результат; КонецФункции
В отладчике проверяю, как вы глядит добавляемый элемент списка XDTO со счетом-основанием:
В печатной форме 1С выводит эти теги так:
В XML-формате список оснований выглядит так:
Клиент говорил, что выгрузку счета можно сделать не программно, а через настройки ЭДО с контрагентом — через дополнительные поля. Но некоторые системы ЭДО игнорируют дополнительные поля, поэтому пока они вне стандарта, приходится делать программную доработку.
Думал уложусь в 1 час, но потратил 2, т.к. не хотел использовать «Изменение и контроль» и пришлось писать хитрый код по спуску контекста в стеку. Такой код проживет дольше при обновлениях 1С.
Среда: 3.0.116.32 Объем: 2 час
ЧессМастер
15.04.21 — 15:33
Всем доброе время суток !
Первая часть здесь
Как подправить XML файл при отправки документа на согласование Диадок
Поскольку та ветка закрыта решил завести новую как продолжение той.
Ситуация следующая.
В пакете документов «УПД Счф Доп» клиент ХОЧЕТ чтобы в поле «Основание передачи (сдачи) / получения (приемки)» договор был указан в следующем формате
Сейчас выводится так «Договор № Оферта ОФ-1П от 10.02.2020»
Хотят чтобы выводилось как «Оферта ОФ-1П от 10.02.2020».
Если выгрузить документ в XML то видно что заполнение этого поля идет следующим образом
<ОснПер НаимОсн=»Договор» НомОсн=»Оферта ОФ-1П» ДатаОсн=»10.02.2020″/>
То есть решением вопроса по сути будет НаимОсн=»»
Кто решал подобные вопросы подскажите пожалуйста — где происходит заполнение этих переменных ?
В обработке ГенерацияXML_epf только XML схемы.
Обработку ПечатныеФормы_epf выгружал в обработку, но при открытии почему-то псевдосимволы. Ее надо как то другим образом выгружать ?
ЧессМастер
1 — 15.04.21 — 15:36
>Хотят чтобы выводилось как «Оферта ОФ-1П от 10.02.2020».
Пояснение.
Сейчас в схеме XML выводится по шаблону [Договор] [НомерДоговора] [ДатаДоговора]
Если НомерДоговора в справочнике договора заполнено, то добавляется символ «№».
Temai
2 — 15.04.21 — 15:40
Если тебе нужно править xml, тогда тебе это надо делать в обработке ГенерацияXML.epf
mikecool
3 — 15.04.21 — 15:46
В событии ПриПолученииКОнтента(или как там его) нельзя перехватить и поправить или уже на более глубокий уровень уходит?
ЧессМастер
4 — 15.04.21 — 15:47
(2) Где происходит заполнение переменных которые используются в XML схеме ?
Мне надо найти где заполняются переменные
НаимОсн=»Договор»
НомОсн=»Оферта ОФ-1П»
ДатаОсн=»10.02.2020″
arsik
5 — 15.04.21 — 15:48
Отправь
<ОснПер НаимОсн=»Оферта» НомОсн=»ОФ-1П» ДатаОсн=»10.02.2020″/>
ЧессМастер
6 — 15.04.21 — 16:02
(5) >Отправь
Я это и хочу сделать.
Мне надо найти где заполняются переменные
НаимОсн=»Договор»
НомОсн=»Оферта ОФ-1П»
ДатаОсн=»10.02.2020″
которые потом попадают в XML схему выгрузки.
В модуле объекта ГенерацияXML_epf есть процедуры заполнения.
Как найти процедуру заполнения для «УПД Счф Доп» например ?
arsik
7 — 15.04.21 — 16:42
Пройдись отладчиком
Kassern
8 — 15.04.21 — 16:48
(6) я в свое время отладчиком ковырнул и нашел где коды товаров заполняются и доп поля для xml. Там есть вложенная обработка в макете, которая генерирует. Ковыряй отладку — найдешь все, что тебе надо.
ЧессМастер
9 — 15.04.21 — 17:32
(8) >нашел где коды товаров заполняются и доп поля для xml. Там есть вложенная обработка в макете, которая генерирует
Я это все нашел. Нашел где заполняется то что мне нужно.
>Ковыряй отладку — найдешь все, что тебе надо
Не соображу как это сделать.
Как ты отладчиком попал в обработку которая загружается из файла в ПечатныеФормы_epf ?
ЧессМастер
10 — 15.04.21 — 17:34
(8) И еще один момент.
Я правильно понимаю что то что мне отображается («УПД Счф Доп» — открыть — показывает УПД) я правлю через ПечатныеФормы_epf
Но то что клиенту пойдет надо править через ГенерацияXML_epf
Kassern
11 — 15.04.21 — 17:35
(9) галочку в обработке ставишь, чтобы в режиме отладки работала, указываешь путь до модулей и спокойно все отлаживаешь
Immortal
12 — 15.04.21 — 20:14
(0) сделай подключаемый модуль
На вики диадок почитай, какое событие пм тебе подходит.
Ну и далее отладчиком посмотришь, что поменять в ДД.
Обработки для отладки складываются в каталог libs, подключаемый модуль можно туда же, только путь в обработке укажи к нему
ЧессМастер
13 — 16.04.21 — 11:48
(11) >галочку в обработке ставишь, чтобы в режиме отладки работала
Как это сделать ?
У меня обработка РаботаССистемойДиадок.
У нее есть макеты ГенерацияXML_epf и ПечатныеФормы_epf. В которые двоичными данными загружены обработки 1С.
Как мне в момент когда отрабатывают эти обработки 1С попасть в отладку ?
ЧессМастер
14 — 16.04.21 — 11:54
(12) >На вики диадок почитай, какое событие пм тебе подходит.
Если ты про https://wiki.diadoc.ru/ то там только описание работы в режиме Предприятия.
>сделай подключаемый модуль
Ты про загрузку обработок из ГенерацияXML_epf и ПечатныеФормы_epf ?
Kassern
15 — 16.04.21 — 12:03
(14) есть такая обработка называется «Diadoc1C_UF_5_47_01». У нее есть вкладочка «настройки», в ней есть как раз таки включение отладки и указание папочки для выгрузки модулей из макетов. Что сложного поставить эту галочку и указать папочку? А далее запускаешь в отладке основной модуль, он у тебя автоматом подцепит выгруженные обработки в ходе отладки.
Vbirf
16 — 16.04.21 — 12:14
+(12) да, у Диадока в настройках есть, так называемый, «Подключаемы модуль», а в нем Функция ОбработатьСобытиеПослеЗаполненияКонтента(параметры), в которой можно подменить для УПД
Content.TransferInfo.TransferBases[0].DocumentName = «как надо…»
Content.TransferInfo.TransferBases[0].DocumentNumber
Content.TransferInfo.TransferBases[0].DocumentDate
Content.TransferInfo.TransferBases[0].DocumentInfo
ЧессМастер
17 — 16.04.21 — 13:22
(15) >У нее есть вкладочка «настройки», в ней есть как раз таки включение отладки и указание папочки для выгрузки модулей из макетов.
Ага спасибо, разобрался с этим. Спасибо большое.
ЧессМастер
18 — 16.04.21 — 13:24
(16) А есть где то таблица соответствий полей и подставляемых значений ?
Ну то есть например
Параметры[0].Значение.DocumentNumber // Номер документа
я нашел.
Но интересно в каких полях Контрагент, КонтрагентИНН и т.п.
понятно что с помощью отладчика можно все раскрутить но может это уже есть в таблице.
Kassern
19 — 16.04.21 — 13:28
(17) не за что. Лучше расскажи чем история с ноутом закончилась)
Vbirf
20 — 16.04.21 — 13:52
(18) это все в параметрах: Параметры.ДокументСсылка.Контрагент.ИНН. Таблицы не видел, отладчиком и вылавливал.
ЧессМастер
21 — 22.04.21 — 19:11
(19) >Лучше расскажи чем история с ноутом закончилась)
Ничем.
Начальник отдела грозно надувал щеки и заявлял что у него есть «доказательства» что это сделал ушедший сисадмин.
Тот говорит — вперед, я готов к общению с полицией.
В результате прошла пара месяцев и никаких заявлений в органы как и предполагалось не было.
ЧессМастер
22 — 22.04.21 — 19:20
Продолжение истории с этим контрагентом.
При выгрузке УПД в XML получается следующее.
В тегах УПД стоит
<СвПродПер>
<СвПер СодОпер=»Товары переданы, работы сданы, услуги оказаны» ДатаПер=»13.04.2021″>
<ОснПер НаимОсн=»Оферта ОФ-1П» НомОсн=»» ДатаОсн=» «/>
<СвЛицПер>
<РабОргПрод Должность=»Сотрудник»>
<ФИО Фамилия=»Беркутов» Имя=»Дмитрий»/>
</РабОргПрод>
</СвЛицПер>
</СвПер>
</СвПродПер>
Клиенту надо чтобы
вместо
НаимОсн=»Договор»
НомОсн=»Оферта ОФ-1П»
ДатаОсн=»10.02.2020″
было
НаимОсн=»»
НомОсн=»Оферта ОФ-1П»
ДатаОсн=»10.02.2020″
Короче ему надо чтобы вместо «Договор № Оферта ОФ-1П от 10.02.2020» было «Оферта ОФ-1П от 10.02.2020».
Как не крутили эти теги XML ничего не получается. При загрузке исправленного XML в личный кабинет выдает ошибку в поле «Договор основание».
Связались с Диадоком. Они утверждают что под этого контрагента дорабатывали модуль документооборота. Чтобы была возможность именно сделать так как хочет клиент — принять XML и заполнить на его стороне поля чтобы вместо «Договор № Оферта ОФ-1П от 10.02.2020» было «Оферта ОФ-1П от 10.02.2020».
Действительно ли такая возможность есть ?
Kassern
23 — 23.04.21 — 09:06
(22) ну так передайте в тех поддержку исправленный файл xml и задайте вопрос, почему для этого клиента, данный файл не кушается
Kassern
24 — 23.04.21 — 09:07
(23) раз, как говорите, для него данный формат разрешен
Kassern
25 — 23.04.21 — 09:09
(22) а что мешает написать так:
НаимОсн=»Оферта»
НомОсн=»ОФ-1П»
ДатаОсн=»10.02.2020″
Kassern
26 — 23.04.21 — 09:10
(25) он тебе так же должен собрать в строку Оферта ОФ-1П от 10.02.2020
При входе в базу 1с вы можете увидеть “Ошибка преобразования данных XDTO:
Начало Свойства: errorProcessingSettings
Форма: Элемент
Тип: {http://v8.1c.ru/8.2/managed-application/core}ErrorProcessingSettings по причине
Чаще всего ошибка возникает при определенном типе запуска: это либо через тонкий клиент, либо через линк42, случаи бывают разные. Через браузер такие базы запускаются без ошибок.
Есть простое решение данной проблемы.
Достаточно запустить базу доступным нам способом (где нет ошибки) включить Функции тех. специалиста (Меню — Настройки — Параметры — Режим технического специалиста)
В Функциях для технического специалиста ищем Управление настройками обработки ошибок (Стандартные)
Запускаем
Готово!
Уже более 10 000 компаний работают
в облачной 1С от 42Clouds
— Консультация по 1С Бесплатно!
— Поддержка 24/7 по техническим вопросам: в чате, по телефону, по почте
— Все типовые конфигурации онлайн, доступ через RDP, Remote App, Web
Показывать по
10
20
40
сообщений
Новая тема
Ответить
Сергей Интяшев
Дата регистрации: 29.01.2019
Сообщений: 1
Добрый день всем. При создании электронного документа выдает такую ошибку.
1С:Предприятие 8.3 (8.3.12.1685)
Бухгалтерия предприятия, редакция 3.0 (3.0.67.43)
Режим : Серверный, PostgreSQL
Не удается создать электронный документ, выдает ошибку: «Выполнение операции: Заполнение XDTO.
Ошибка установки значения свойства «НалСт».
Подробности см. в журнале регистрации.»
Сообщения из журнала регистрации:
Выполнение операции: Заполнение XDTO.
Ошибка установки значения свойства «НалСт».
{ОбщийМодуль.ОбменСКонтрагентамиВнутренний.Модуль(10673)}: Ошибка при вызове метода контекста (Установить)
ОбъектXDTO.Установить(ИмяСвойства, Значение);
по причине:
Несоответствие типов XDTO
по причине:
Ошибка проверки данных XDTO:
Значение: ‘20%’ не соответствует простому типу:
Значение не соответствует значениям фасета перечисления
————————————————————————————-
Выполнение операции: Формирование ЭД.
{ОбщийМодуль.ОбменСКонтрагентамиВнутренний.Модуль(8390)}: Выполнение операции: Заполнение XDTO.
Ошибка установки значения свойства «НалСт».
ВызватьИсключение ЭлектронноеВзаимодействиеСлужебный.СоединитьОшибки(Ошибки);
Помогите пожалуйста, может кто сталкивался с данной проблемой
Ленар Ленарович
Дата регистрации: 15.03.2019
Сообщений: 1
Нужно обновить 1С до определенного релиза. Для «Бухгалтерия предприятия», редакция 3.0 необходимо обновиться до релиза 3.0.67.67
Показывать по
10
20
40
сообщений
Читают тему:
Клиент поставил задачу — добавлять в основание документа не только документ но и счет на оплату (основание реализации).
Сначала я смотрю, где выводится основание передачи, там действительно указан договор:
Выгружаю в файл, нахожу, где это в тегах XML:
Запускаем монитор производительности и смотрим, где заполняется ОснПер (ищем поиском в логе кода ОснПер), находим что это процедура ЗаполнитьДокумент_УПД2019_ИнформацияПродавца модуля ФорматыЭДО_ФНС:
Если в отладчике поправить значения:
То можно убедиться, что отображение тоже меняется:
Не хочется добавлять весь длинный код формирования кода ЭДО в директиву «Изменение и контроль». Но тут встречается проблема. В этом длинном коде после окончания формирования нет ни одной функции, куда передавались бы одновременно Документ и ДеревоДанных, увы. Есть только вызов ЗаполнитьСведенияОПодписантах, но он вызывается не всегда (внутри Если):
Сначала я хотел использовать доработки в функцию ПроверитьОбъектXDTO модуля ФорматыЭДО_ФНС, но увы, туда не передается ДеревоДанных.
Поэтому буду использовать свой метод спуска параметра в стек. Сначала я хотел вставить ссылку на документ в дерево данных, как написано в моей статье. Но раз использую параметры сеанса, это уже не требуется (код вставки ссылки в дерево закомментирован):
&Вместо("СформироватьДанныеОсновногоТитулаПоОбъектуУчета") Функция эдоко_СформироватьДанныеОсновногоТитулаПоОбъектуУчета(ОбъектУчета, Настройки, Данные) // https://geniy1s.ru/razbiraem-novoe-edo-ot-1s-v-bp3-iyun-2021/ //Не буду использовать, помещаю сразу в параметры сеанса //Использовать: ТекСсылкаНаОбъект = ДеревоЭлектронногоДокументаБЭД.ЗначениеРеквизитаВДереве(ДеревоДанных, "дор_ОбъектУчета"); //НСтр = Данные.ДанныеДокумента.Строки.Добавить(); //НСтр.ПолныйПуть = "дор_ОбъектУчета"; //НСтр.Значение = ОбъектУчета; УстановитьПривилегированныйРежим(Истина); //Чтобы работать с параметров сеанса, на который не назначены права ПараметрыСеанса.эдоко_ДанныеДляЗаполнения = Новый ФиксированнаяСтруктура(); //Очищаем Если ТипЗнч(ОбъектУчета) = Тип("ДокументСсылка.РеализацияТоваровУслуг") Тогда Если ЗначениеЗаполнено(ОбъектУчета.СчетНаОплатуПокупателю) Тогда Структура = Новый Структура(); Номер = ""; ЭлектронноеВзаимодействиеПереопределяемый.ПолучитьПечатныйНомерДокумента(ОбъектУчета.СчетНаОплатуПокупателю, Номер); Дата = Формат(ОбъектУчета.СчетНаОплатуПокупателю.Дата, "ДФ=dd.MM.yyyy"); Структура.Вставить("Номер", Номер); Структура.Вставить("Дата", Дата); Структура.Вставить("Представление", "Счет на оплату № " + Номер + " от " + Дата); ПараметрыСеанса.эдоко_ДанныеДляЗаполнения = Новый ФиксированнаяСтруктура(Структура); КонецЕсли; КонецЕсли; Результат = ПродолжитьВызов(ОбъектУчета, Настройки, Данные); //формирвоание титула после добавления ссылки, т.к. там все и происходит Возврат Результат; КонецФункции
К тому же, этот код будет работать намного дольше и в разных релизах, т.к. не привязан к длинному исходному коду через «Изменение и контроль».
Теперь осталось только добавить элемент в список оснований:
&Вместо("ПроверитьОбъектXDTO") Функция эдоко_ПроверитьОбъектXDTO(Знач ОбъектXDTO, Ошибки) //Добавляем УстановитьПривилегированныйРежим(Истина); //Чтобы работать с параметров сеанса, на который не назначены права Если ТипЗнч(ПараметрыСеанса.эдоко_ДанныеДляЗаполнения) = Тип("ФиксированнаяСтруктура") Тогда ДопДанные = Новый Структура(ПараметрыСеанса.эдоко_ДанныеДляЗаполнения); Номер = ""; Дата = ""; Представление = ""; Если ДопДанные.Свойство("Представление", Представление) И ДопДанные.Свойство("Дата", Дата) И ДопДанные.Свойство("Номер", Номер) Тогда Попытка СписокXDTO = ОбъектXDTO.Получить("Документ/СвПродПер/СвПер").ПолучитьСписок("ОснПер"); ПространствоИмен = ПространствоИмен_УПД2019_ИнформацияПродавца(); ОснПер = ПолучитьОбъектТипаCML("Файл.Документ.СвПродПер.СвПер.ОснПер", ПространствоИмен); ОснПер.НаимОсн = Представление; ОснПер.НомОсн = Номер; ОснПер.ДатаОсн = Дата; СписокXDTO.Добавить(ОснПер); Исключение КонецПопытки; КонецЕсли; КонецЕсли; Результат = ПродолжитьВызов(ОбъектXDTO, Ошибки); Возврат Результат; КонецФункции
В отладчике проверяю, как вы глядит добавляемый элемент списка XDTO со счетом-основанием:
В печатной форме 1С выводит эти теги так:
В XML-формате список оснований выглядит так:
Клиент говорил, что выгрузку счета можно сделать не программно, а через настройки ЭДО с контрагентом — через дополнительные поля. Но некоторые системы ЭДО игнорируют дополнительные поля, поэтому пока они вне стандарта, приходится делать программную доработку.
Думал уложусь в 1 час, но потратил 2, т.к. не хотел использовать «Изменение и контроль» и пришлось писать хитрый код по спуску контекста в стеку. Такой код проживет дольше при обновлениях 1С.
Среда: 3.0.116.32 Объем: 2 час
Мы визуализируем ровно те данные, которые вы передаете. В Диадок приходит xml c данными <ОснПер НаимОсн=’договор’ НомОсн=’5280/9/2017-9843′ ДатаОсн=’26.12.2017′ ДопСвОсн=»/>.
Вероятно xml был создан сторонними средствами генерации. Наш метод генерации выдает XML, у которого атрибуты заключены в двойные кавычки. А в вашем файле все кавычки одинарные.
Мы не можем ручаться за файлы, сгенерированные сторонними средствами. Предлагаем проверить ваш инструмент генерации XML.