#std432¶
Использование реквизитов строкового типа¶
1.1.¶
Для реквизитов строкового типа используйте переменную длину строки:
Допустимая длина = Переменная.
При этом обязательно задавайте максимально допустимую длину.
Допустимая длина = Фиксированная допустима только тогда,
когда действительно нужна гарантия одинаковой длины строки
(за счет автоматического дополнения пробелами справа).
1.2.¶
Если максимальная длина строки заранее известна
(например, регламентирована),
указывайте ее в свойстве Длина
(или Длина наименования для стандартного реквизита Наименование).
Например, длина реквизита ИНН справочника ФизическиеЛица
должна быть 12 символов.
1.3.¶
Если строка получается конкатенацией других строк, определяйте ее длину как сумму длин исходных строк.
Например, длина представления адреса должна равняться сумме длин полей, в которых хранятся части адреса.
1.4.¶
Если длина строки не регламентирована, выбирайте разумный лимит, которого достаточно в большинстве случаев.
Например:
- полное наименование контрагента -
250 символов; - максимальная длина имени файла в большинстве файловых систем -
260; - полное имя физического лица -
100.
2.¶
В отдельных случаях допустимо использовать строки неограниченной длины.
2.1.¶
Когда в строковый реквизит может попадать пользовательский текст большого объема.
Обычно это многострочные поля формы.
Например, поле Дополнительное описание в заказе клиента
или #std531: поле Комментарий.
2.2.¶
Когда в строковом реквизите хранится техническая информация, которая генерируется программами.
Такие данные чаще всего не предназначены для чтения пользователем, а используются в алгоритмах обработки. Например, XML-документы, заголовки почтовых сообщений.
3.¶
Если используются строковые реквизиты неограниченной длины, учитывайте ограничения языка запросов.
3.1.¶
Для сравнения значений, группировки и получения РАЗЛИЧНЫЕ
приводите такие реквизиты к строке определенной длины,
достаточной для корректного вычисления выражения.
Для этого используйте в запросе конструкцию:
3.2.¶
В отчетах СКД для таких полей вместо этого
задавайте параметр Тип значения поля
(вкладка Наборы данных).
Учитывайте, что частое приведение неограниченной строки к определенной длине в запросах и отчетах СКД может указывать на неправильное проектное решение.
В таком случае пересмотрите тип реквизита в пользу строки ограниченной длины.
3.3.¶
В остальных случаях обрезать строку в запросах не требуется.
4.¶
Если строковое поле выводится в печатной форме, обеспечьте полный вывод значения, независимо от назначенной длины строки.
Иначе можно потерять значимую часть информации. Например, номер дома и квартиры в адресе доставки.
Чтобы быстро найти в конфигурации строковые реквизиты неограниченной длины, используйте обработку с ИТС СтрокиНеограниченнойДлины.erf.