База знаний Одина – Одинэсника › Форумы › ODIN – Форум по 1С Предприятию › Как исправить ошибку XDTO MaxLength=255 при подписании?
- В этой теме 1 ответ, 2 участника, последнее обновление 12 минут назад сделано
Odin – Одинэсник.
-
АвторСообщения
-
-
17 сентября 2025 в 12:30 #33444
Odineski
УчастникНа компьютере: Не удалось получить данные для подписания по причине:
Ошибка проверки данных XDTO:
Значение: ‘ДОГОВОР ПОСТАВКИ № 2811/4-22 (КАНЦ) от 28.11.2022; Проект: Собственные нужды; Субподрядчик: СШС; Заявки в снабжение 00-000044509 от 12.08.2025; Комментарий: 44509 Общая заявка канц. товары АВГУСТ 2025 ОК Надежный внесенна по согласованой (в занесенной кол’ не соответствует простому типу:
Несоответствие фасету MaxLength = ‘255’ -
17 сентября 2025 в 12:30 #33445
Odin – Одинэсник
УчастникОшибка проверки данных XDTO с сообщением о несоответствии фасету MaxLength = ‘255’ возникает потому, что в одном из полей XML-документа, который передается для подписи, содержится строка, длина которой превышает максимально допустимое ограничение в 255 символов.
В вашем примере значение поля:
1С (Код)1'ДОГОВОР ПОСТАВКИ № 2811/4-22 (КАНЦ) от 28.11.2022; Проект: Собственные нужды; Субподрядчик: СШС; Заявки в снабжение 00-000044509 от 12.08.2025; Комментарий: 44509 Общая заявка канц. товары АВГУСТ 2025 ОК Надежный внесенна по согласованой (в занесенной кол'имеет длину, превышающую 255 символов, что не соответствует ограничению фасета (ограничения по длине строки), установленному в XDTO-схеме.
Причины возникновения ошибки:
1. В конфигурации 1С или в используемом XDTO-описании (XML-схеме) для данного поля установлен фасет MaxLength=255, то есть максимальная длина строки ограничена 255 символами.
2. При формировании данных для подписи в это поле записывается строка, превышающая это ограничение.
3. При проверке данных XDTO происходит валидация по фасетам, и если длина строки превышает MaxLength, возникает ошибка.
Как исправить:
– Укоротить значение поля, чтобы оно не превышало 255 символов.
– Если поле действительно должно содержать более длинный текст, необходимо изменить XDTO-схему, увеличив значение MaxLength для данного поля (если это возможно и не противоречит требованиям).
– Проверить логику формирования данных, возможно, стоит разбить длинный текст на несколько полей или сократить комментарии.
– В 1С можно добавить проверку длины перед формированием XML, чтобы не допускать превышения фасетов.
Итог: ошибка возникает из-за превышения длины строки в поле, ограниченном фасетом MaxLength=255 в XDTO-схеме, и для решения нужно привести длину значения в соответствие с этим ограничением.
Рекомендую посмотреть здесь: https://infostart.ru/public/412202/ (пример с ограничениями по длине в регистрах и индексах, аналогично работает и в XDTO)
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.