Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
06 фев 2023, 04:02

При обмене заказами с 1С Битрикс характеристики не выводятся в печатную форму

Автор Trial, 06 мая 2022, 22:07

0 Пользователей и 1 гость просматривают эту тему.

Trial

Приветствую всех. Есть номенклатура с характеристиками которая выгружается в 1С Битрикс. При формировании заказа клиентом в 1С Битриксе происходит обмен и в 1С создаётся заказ и в заказе соответственно создаются товары с этими характеристиками. Проблема в том что характеристики не выводятся в печатную форму а чтобы выводились нужно их просто перевыбрать в списке

На первом скриншоте печатная форма "Заказ клиента" который только что пришёл с сайта:


На втором скриншоте та же печатная форма после того как в списке товаров просто перевыбрать характеристики на те же самые. Они соответственно выводятся в форму:


Менеджеры очень страдают, надо поправить этот момент, чтобы характеристики сразу выводились в форму без перевыбора, скажите кто-нибудь сталкивался с этой проблемой куда глядеть?

1С 8.3 УТ 11.4

Trial

АП. Проблема актуальна, подскажите пожалуйста. Уже облазил конфигуратор модуль обмена "Б_ОбменССайтомСерверЗагрузкиДанных" нашёл там кусок кода:

ИначеЕсли ТекущийРеквизит.Значение = "Характеристика" тогда
           
     СтрИнформацииОНоменклатуре = ПолучитьИнформациюОНоменклатуреДляДокумента(ПараметрыОбмена, СтрокаXML);
       
     Если СтрИнформацииОНоменклатуре.ХарактеристикаНоменклатуры = Неопределено тогда
           Результат = Справочники.ХарактеристикиНоменклатуры.ПустаяСсылка();   
     Иначе
           Результат = СтрИнформацииОНоменклатуре.ХарактеристикаНоменклатуры;   
     КонецЕсли;
           
ИначеЕсли.....

Поставил точки останова, реквизиты характеристик находятся, идентификаторы с сайта передаются всё совпадает. Но по факту в заказе как я понял характеристика не выбрана как значение реквизита, а просто записан текст в поле. Ничего не могу понять куда копать, и в инете нет инфы никакой с такой проблемой.  :(

Trial

Проблему решил, не знаю насколько верно никто не помогает и инфы нигде нет. Решил следующим образом заходим в Общий модуль далее НоменклатураКлиентСервер
ищем там функцию ПредставлениеНоменклатурыДляПечати в ней ищем вот это условие:
Если ЗначениеЗаполнено(ДополнительныеПараметры.Содержание) Тогда
        ПредставлениеНоменклатуры = СокрЛП(ДополнительныеПараметры.Содержание);
 Иначе

в этом условии добавляем доп проверку и заполнение наименования для печати:

Если ЗначениеЗаполнено(ДополнительныеПараметры.Содержание) Тогда

Если  ЗначениеЗаполнено(НаименованиеНоменклатурыДляПечати)
И ЗначениеЗаполнено(НаименованиеХарактеристикиДляПечати) Тогда
ТекстВСкобках = СокрЛП(НаименованиеХарактеристикиДляПечати);
ПредставлениеНоменклатуры = НСтр("ru = '%НаименованиеНоменклатурыДляПечати% (%ТекстВСкобках%)'");
ПредставлениеНоменклатуры = СтрЗаменить(ПредставлениеНоменклатуры, "%НаименованиеНоменклатурыДляПечати%", СокрЛП(НаименованиеНоменклатурыДляПечати));
ПредставлениеНоменклатуры = СтрЗаменить(ПредставлениеНоменклатуры, "%ТекстВСкобках%", СокрЛП(ТекстВСкобках));
Иначе
ПредставлениеНоменклатуры = СокрЛП(ДополнительныеПараметры.Содержание);
КонецЕсли;

Иначе

Тем самым при наличии содержания он не игнорит характеристику для печати, а проверяет её на наличие вместе с наименованием товара и передаёт их в печатную форму, если чегото из этого нет отправляет содежание. Надеюсь комуто поможет в будущем.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru Rambler's Top100

Поиск