1с тип строка длина

Область применения: управляемое приложение, мобильное приложение, обычное приложение.

1.1. Для реквизитов строкового типа следует использовать переменную длину строки (свойство Допустимая длина = Переменная ) и при этом указывать максимально допустимую длину строки. Свойство Допустимая длина может принимать значение Фиксированная только в тех случаях, когда при манипуляции этими данными действительно необходимо иметь гарантию, что строка имеет определенную длину (за счет автоматического дополнения концевыми пробелами).

1.2. В тех случаях, когда максимальная длина строки заранее известна (например, она регламентирована), следует указывать ее в свойстве Длина (или Длина наименования для стандартного реквизита Наименование ). Например, длина строкового реквизита ИНН справочника ФизическиеЛица должна составлять 12 символов.

1.3. Если строка является конкатенацией других строк, то ее длина может быть определена как сумма длин исходных строк. Например, длина представления адреса должно равняться сумме длин полей, в которых хранятся части адреса.

1.4 Если длина строки не регламентирована, то рекомендуется выбирать такую длину, которой достаточно для хранения данных в большинстве случаев. Например, для хранения полного наименования контрагента в подавляющем большинстве случаев достаточно 250 символов, максимальная длина имени файла в большинстве файловых систем – 260, полное имя физического лица – 100 и т.п.

2. В отдельных случаях, допускается использование строк неограниченной длины:

2.1. Предполагается, что в реквизит строкового типа может быть помещен пользовательский текст, объем которого может быть значительным. Как правило, это многострочные поля на форме. Например, в поле Дополнительное описание в заказе клиента менеджер может поместить всю историю переписки с клиентом, в поле Комментарий – пользователь может ввести произвольный многострочный текст и т.п.

2.2. В строковом реквизите хранится различная техническая информация, которая генерируется программами и, чаще всего, не предназначена для чтения пользователем, а используется в различных алгоритмах обработки информации. Например, xml-документы, заголовки почтовых сообщений и т.п.

3. В случае использования строковых реквизитов неограниченной длины следует иметь в виду возникающие при этом ограничения в языке запросов:

3.1. При необходимости сравнения значений, группировки и получения различных, такие реквизиты необходимо выражать как строку определенной длины, такой, чтобы выражение было вычислено верно.

Для этих целей в запросе рекомендуется использовать конструкцию

ВЫРАЗИТЬ КАК СТРОКА(1000)

3.2. В отчетах СКД для таких полей следует, вместо этого, задавать параметр Тип значения поля (на закладке Наборы данных ).

Следует иметь в виду, что частое приведение неограниченной строки к определенной длине в запросах и отчетах СКД может быть признаком неправильного проектного решения и служить сигналом для пересмотра типа строкового реквизита в пользу ограниченной длины строки.

3.3. В остальных случаях, урезать строку в запросах не требуется.

4. Если в печатных формах предусмотрено отображение строкового поля, то независимо от того, какая назначена длина строки, необходимо обеспечить вывод таких строк полностью, без обрезания части строки. В противном случае, может быть утеряна значимая часть информации. Например, номер дома и квартиры в поле с адресом доставки товара в печатной форме.

Для быстрого выявления в конфигурации всех строковых реквизитов неограниченной длины можно воспользоваться приложенной обработкой СтрокиНеограниченнойДлины.erf

Слова «ОписаниеТипов» и «Квалификаторы» вызывают трудность понимания на начальном этапе использования. По сути это простые вещи — с толку может сбивать их название.

Что такое Квалификаторы?

В 1С есть простые типы: Число , Строка , Дата . Но иногда необходимо уточнить, что переменная будет не просто числом, а например, числом длиной 12 символов и 2 разрядами после запятой, при этом неотрицательное. В простых типах это сделать невозможно т.к. тип не имеет соответствующих свойств. Для таких случаев и нужен объект «Квалификатор».

У каждого простого типа есть свой квалификатор:

Что такое Описание типов?

ОписаниеТипов — это объект, который содержит массив допустимых типов, но т.к. в массиве нет возможности указать дополнительные данные, то отдельно для простых типов ( Число , Строка , Дата ) можно уточнить свойства квалификаторами.

  • Типы (обязательный, тип Массив , Строка ). Массив значений типа Тип , состоящий из типов, которые будут использованы в объекте, или строка, содержащая имена типов, разделенных запятыми.
  • КвалификаторыЧисла (необязательный, тип КвалификаторыЧисла ). Квалификаторы числа, описывающие допустимые значения числового типа. Если параметр не указан, то числа хранить нельзя.
  • КвалификаторыСтроки (необязательный, тип КвалификаторыСтроки ). Квалификаторы строки, описывающие допустимые значения строкового типа. Если параметр не указан, то используется неограниченная длина строки.
  • КвалификаторыДаты (необязательный, тип КвалификаторыДаты ). Квалификаторы даты, описывающие допустимые значения типа Дата . Если параметр не указан, то используются обе части даты (дата + время).

Создает описание типов на основании заданных типов и квалификаторов для типов Число , Строка , Дата .

У описания типов есть четыре параметра, первый — обязательный, в нем указываются типы. Остальные — необязательные, в них указываются квалификаторы. Для создания описания типов существует несколько вариантов.

Указание типа строкой:

Можно указать несколько типов, разделяя их запятыми:

Можно передать массив типов:

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

Заключение

Описание типов — это объект, который используется, чтобы ограничить ввод данных, а квалификаторы — это объекты, которые дополняют ограничения для простых типов. Квалификаторов в описании типов три — по одному для каждого простого типа: Число , Строка , Дата .

Для наглядности посмотрим на ограничение типов в реквизитах объекта конфигурации. По сути, это один механизм:

Вступайте в мою группу помощник программиста.
В ней мы обсуждаем программирование в 1С.

ОписаниеТипов

Описание:

Представляет собой объект для управления допустимыми типами значений. В основном предназначен для присвоения в качестве значений соответствующим свойствам других объектов. Набор допустимых типов и квалификаторы примитивных типов задаются при создании объекта.

Оцените статью
Добавить комментарий