Есть обмен между УТ 10.3 и 1с-Битрикс "Управление сайтом".
На стороне УТ при обмене есть ограничение на размер ДополнительноеОписаниеНоменклатуры.
Сам реквизит ограничений нет, а вот при обмене все символы которые за границей 10000 режутся.
Нашел такой фрагмент кода:
Вроде, все просто меняю 10тыщ на 100тыщ и должна быть радость, но не тут-то было.
При очередном обменен вываливается ошибка:
Значит нужно поправить размер переменной в XDTO, но где это сделать?
Смотрю в дерево конфигуратора, там Общие->XDTO-пакеты->CML208
Но там нет параметра длины переменной, где указывается длина?
На стороне УТ при обмене есть ограничение на размер ДополнительноеОписаниеНоменклатуры.
Сам реквизит ограничений нет, а вот при обмене все символы которые за границей 10000 режутся.
Нашел такой фрагмент кода:
лДополнительноеОписаниеНоменклатуры = ?(СтрДлина(лОписаниеТовара) > 10000, Лев(лОписаниеТовара, 10000), лОписаниеТовара);
Вроде, все просто меняю 10тыщ на 100тыщ и должна быть радость, но не тут-то было.
При очередном обменен вываливается ошибка:
{ОбщийМодуль.Б_ПроцедурыИФункцииВыгрузкиДанныхНаСайт.Модуль(7102)}: Ошибка при установке значения атрибута контекста (Описание)
XDTOТовар[ТекСтр.НаименованиеПоля] = ?(лЗначение = NULL, ?(ТекСтр.НаименованиеПоля = "Вес" , 0, ""), лЗначение);
по причине:
Несоответствие типов XDTO
по причине:
Ошибка проверки данных XDTO:
Значение:Тут следует длинное описание номенклатуры
' не соответствует простому типу: {urn:1C.ru:commerceml_2}СтрокаТип
Несоответствие фасету MaxLength = '10000'
XDTOТовар[ТекСтр.НаименованиеПоля] = ?(лЗначение = NULL, ?(ТекСтр.НаименованиеПоля = "Вес" , 0, ""), лЗначение);
по причине:
Несоответствие типов XDTO
по причине:
Ошибка проверки данных XDTO:
Значение:Тут следует длинное описание номенклатуры
' не соответствует простому типу: {urn:1C.ru:commerceml_2}СтрокаТип
Несоответствие фасету MaxLength = '10000'
Значит нужно поправить размер переменной в XDTO, но где это сделать?
Смотрю в дерево конфигуратора, там Общие->XDTO-пакеты->CML208
Но там нет параметра длины переменной, где указывается длина?
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
(10)Бинго! В плане обмена Б_ОбменССайтом есть макет СхемаXSDОбмена
выгрузил в файл, а там
Сейчас поправлю и загружу файл обратно.
выгрузил в файл, а там
<xs:simpleType name="СтрокаТип">
<xs:restriction base="xs:string">
<xs:maxLength value="10000" />
</xs:restriction>
</xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="10000" />
</xs:restriction>
</xs:simpleType>
Сейчас поправлю и загружу файл обратно.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) приведите полный текст ошибки.
По всей видимости ДополнительноеОписаниеНоменклатуры имеет свой тип.
Проверьте какой именно тип у ДополнительноеОписаниеНоменклатуры.
Судя по скрину курсор стоит на Описание. Это и есть ДополнительноеОписаниеНоменклатуры?
Тогда это тип КоментарийТип. Вот его и править нужно.
По всей видимости ДополнительноеОписаниеНоменклатуры имеет свой тип.
Проверьте какой именно тип у ДополнительноеОписаниеНоменклатуры.
Судя по скрину курсор стоит на Описание. Это и есть ДополнительноеОписаниеНоменклатуры?
Тогда это тип КоментарийТип. Вот его и править нужно.
Попробовал изменить параметр "Максимальная длина" у типов "СтрокаТип" и "ЗначениеТип" - не помогло, та же ошибка :(
Так же ссылается на максимальную длину в 10000 символов, хотя и там и там ставил 25000
Так же ссылается на максимальную длину в 10000 символов, хотя и там и там ставил 25000
Прикрепленные файлы:
(10)Бинго! В плане обмена Б_ОбменССайтом есть макет СхемаXSDОбмена
выгрузил в файл, а там
Сейчас поправлю и загружу файл обратно.
выгрузил в файл, а там
<xs:simpleType name="СтрокаТип">
<xs:restriction base="xs:string">
<xs:maxLength value="10000" />
</xs:restriction>
</xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="10000" />
</xs:restriction>
</xs:simpleType>
Сейчас поправлю и загружу файл обратно.
Тоже потратил некоторое время на поиск решения.
Редактирование конфигурации (УТ 11.4) для обмена с сайтом товаров, имеющих "Файл описания для сайта".
По умолчанию стоит ограничение строки в 1000 знаков.
Чтобы это исправить, открываем в конфигураторе, делаем конфигурацию редактируемой, ищем и исправляем:
1) Общие->XDTO-пакеты->CML208
Типы значений -> ЗначениеТип -> МаксимальнаяДлина (меняем с 1000 на требуемую, например 10000)
2) Затем глобальный поиск по строке "ОписаниеВФорматеHTML"
ищем строку (Основная конфигурация ОщийМодуль.ОбменССайтом.Модуль(2790.18)
"Если ЗначениеЗаполнено(ДанныеНоменклатуры.НоменклатураФайлОписанияHTML) Тогда
ОписаниеВФорматеHTML = ТекстHTMLИзФайла(ДанныеНоменклатуры.НоменклатураФайлОписанияHTML);
Если НЕ ПустаяСтрока(ОписаниеВФорматеHTML) Тогда
Если СтрДлина(ОписаниеВФорматеHTML) <= 10000 Тогда
ДобавитьЗначениеРеквизитаXDTO(ЗначенияРеквизитовXDTO, ПакетCML,
"ОписаниеВФорматеHTML", ОписаниеВФорматеHTML);
"
НУЖНА СТРОКА "Если СтрДлина(ОписаниеВФорматеHTML) <= 1000 Тогда"
меняем на длину как в "МаксимальнаяДлина" (например 10000)
После этого сохраняем конфигурацию в базе данных/ или на сервере. Должно сработать.
Про обновлении конфигурации или надо оставлять старую запись или редактировать после обновления на требуемые значения снова.
Редактирование конфигурации (УТ 11.4) для обмена с сайтом товаров, имеющих "Файл описания для сайта".
По умолчанию стоит ограничение строки в 1000 знаков.
Чтобы это исправить, открываем в конфигураторе, делаем конфигурацию редактируемой, ищем и исправляем:
1) Общие->XDTO-пакеты->CML208
Типы значений -> ЗначениеТип -> МаксимальнаяДлина (меняем с 1000 на требуемую, например 10000)
2) Затем глобальный поиск по строке "ОписаниеВФорматеHTML"
ищем строку (Основная конфигурация ОщийМодуль.ОбменССайтом.Модуль(2790.18)
"Если ЗначениеЗаполнено(ДанныеНоменклатуры.НоменклатураФайлОписанияHTML) Тогда
ОписаниеВФорматеHTML = ТекстHTMLИзФайла(ДанныеНоменклатуры.НоменклатураФайлОписанияHTML);
Если НЕ ПустаяСтрока(ОписаниеВФорматеHTML) Тогда
Если СтрДлина(ОписаниеВФорматеHTML) <= 10000 Тогда
ДобавитьЗначениеРеквизитаXDTO(ЗначенияРеквизитовXDTO, ПакетCML,
"ОписаниеВФорматеHTML", ОписаниеВФорматеHTML);
"
НУЖНА СТРОКА "Если СтрДлина(ОписаниеВФорматеHTML) <= 1000 Тогда"
меняем на длину как в "МаксимальнаяДлина" (например 10000)
После этого сохраняем конфигурацию в базе данных/ или на сервере. Должно сработать.
Про обновлении конфигурации или надо оставлять старую запись или редактировать после обновления на требуемые значения снова.
{ОбщийМодуль.Б_ОбменССайтомСерверВыгрузкаДанных.Модуль(7236)}: Ошибка при установке значения атрибута контекста (Ид)
XDTOДокумент.Ид = XMLСтрока(Документ.ИдентификаторДокумента);
по причине:
Несоответствие типов XDTO
по причине:
Ошибка проверки данных XDTO:
Значение: 'Короб №19/1 (пятислойный) с ручками, 600*400*400 мм' не соответствует простому типу: {urn:1C.ru:commerceml_3}ИдентификаторГлобальныйТип
Несоответствие фасету MaxLength = '40'
а у меня такая ошибка(((
XDTOДокумент.Ид = XMLСтрока(Документ.ИдентификаторДокумента);
по причине:
Несоответствие типов XDTO
по причине:
Ошибка проверки данных XDTO:
Значение: 'Короб №19/1 (пятислойный) с ручками, 600*400*400 мм' не соответствует простому типу: {urn:1C.ru:commerceml_3}ИдентификаторГлобальныйТип
Несоответствие фасету MaxLength = '40'
а у меня такая ошибка(((
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот