1С 8.3 Описание типов
Данные > Примеры кода 1С > 1С 8.3 Описание типов
Описание типов в 1С 8.3 - это объект для управления допустимыми типами значений, который предназначен для присвоения в качестве значений соответствующим свойствам других объектов. Набор допустимых типов и квалификаторы примитивных типов задаются при создании объекта.
Работа с Описанием типов (&НаКлиенте) в 1С 8.3:
// Описание типа строки:
НовСтрока = Новый ОписаниеТипов("Строка");
// Описание строки с уточнением через квалификатор: максимальная длина строки = 50 символов
КвалификаторыСтроки = Новый КвалификаторыСтроки(50);
НовСтрока_50 = Новый ОписаниеТипов("Строка", ,КвалификаторыСтроки);
// Описание типа числа:
НовЧисло = Новый ОписаниеТипов("Число");
// Описание числа с уточнением через квалификатор: общее число разрядов = 14, число дробной части = 3
КвалификаторыЧисла = Новый КвалификаторыЧисла(14, 3, ДопустимыйЗнак.Любой);
НовЧисло_14_3 = Новый ОписаниеТипов("Число", КвалификаторыЧисла);
// Описание типа даты:
НовДата = Новый ОписаниеТипов("Дата");
// Описание даты с уточнением через квалификатор: храниться только дата, без времени
КвалификаторыДаты = Новый КвалификаторыДаты(ЧастиДаты.Дата);
НовДата_БезВремени = Новый ОписаниеТипов("Дата", , ,КвалификаторыДаты);
// Описание типа булево:
НовБулево = Новый ОписаниеТипов("Булево");// Истина, Ложь
// Описание типа справочника:
НовНоменклатура = Новый ОписаниеТипов("СправочникСсылка.Номенклатура");
// Описание типа перечисление:
НовСпособОплаты = Новый ОписаниеТипов("ПеречислениеСсылка.СпособыОплаты");
// Описание типа документа:
НовДоговор = Новый ОписаниеТипов("ДокументСсылка.Договор");
// Описание типа структуры:
НовСтруктура = Новый ОписаниеТипов("Структура");
// Описание типа соответствия:
НовСоответствие = Новый ОписаниеТипов("Соответствие");
// Описание типа массива:
НовМассив = Новый ОписаниеТипов("Массив");
// Описание типа хранилище значения:
НовХранилищеЗначения = Новый ОписаниеТипов("ХранилищеЗначения");
// Описание типа таблица значений:
НовТаблицаЗначений = Новый ОписаниеТипов("ТаблицаЗначений");
// Описание типа список значений:
НовТаблицаЗначений = Новый ОписаниеТипов("СписокЗначений");
// Описание типа картинки:
НовКартинка = Новый ОписаниеТипов("Картинка");
// Описание типа уникального идентификатора:
НовУникальныйИдентификатор = Новый ОписаниеТипов("УникальныйИдентификатор");
// Описание типа объекта метаданых:
НовОбъектМетаданных = Новый ОписаниеТипов("ОбъектМетаданных, Строка");
// Описание составного типа (Например: строка+структура+справочник):
СписокМассив = Новый Массив;
СписокМассив.Добавить("Строка");
СписокМассив.Добавить("Структура");
СписокМассив.Добавить("СправочникСсылка.Номенклатура");
ОписаниеСоставногоТипа = Новый ОписаниеТипов(СписокМассив);
ЭтаФорма.РеквизитСписокЗначений.ТипЗначения = ОписаниеСоставногоТипа;
НовСтрока = Новый ОписаниеТипов("Строка");
// Описание строки с уточнением через квалификатор: максимальная длина строки = 50 символов
КвалификаторыСтроки = Новый КвалификаторыСтроки(50);
НовСтрока_50 = Новый ОписаниеТипов("Строка", ,КвалификаторыСтроки);
// Описание типа числа:
НовЧисло = Новый ОписаниеТипов("Число");
// Описание числа с уточнением через квалификатор: общее число разрядов = 14, число дробной части = 3
КвалификаторыЧисла = Новый КвалификаторыЧисла(14, 3, ДопустимыйЗнак.Любой);
НовЧисло_14_3 = Новый ОписаниеТипов("Число", КвалификаторыЧисла);
// Описание типа даты:
НовДата = Новый ОписаниеТипов("Дата");
// Описание даты с уточнением через квалификатор: храниться только дата, без времени
КвалификаторыДаты = Новый КвалификаторыДаты(ЧастиДаты.Дата);
НовДата_БезВремени = Новый ОписаниеТипов("Дата", , ,КвалификаторыДаты);
// Описание типа булево:
НовБулево = Новый ОписаниеТипов("Булево");// Истина, Ложь
// Описание типа справочника:
НовНоменклатура = Новый ОписаниеТипов("СправочникСсылка.Номенклатура");
// Описание типа перечисление:
НовСпособОплаты = Новый ОписаниеТипов("ПеречислениеСсылка.СпособыОплаты");
// Описание типа документа:
НовДоговор = Новый ОписаниеТипов("ДокументСсылка.Договор");
// Описание типа структуры:
НовСтруктура = Новый ОписаниеТипов("Структура");
// Описание типа соответствия:
НовСоответствие = Новый ОписаниеТипов("Соответствие");
// Описание типа массива:
НовМассив = Новый ОписаниеТипов("Массив");
// Описание типа хранилище значения:
НовХранилищеЗначения = Новый ОписаниеТипов("ХранилищеЗначения");
// Описание типа таблица значений:
НовТаблицаЗначений = Новый ОписаниеТипов("ТаблицаЗначений");
// Описание типа список значений:
НовТаблицаЗначений = Новый ОписаниеТипов("СписокЗначений");
// Описание типа картинки:
НовКартинка = Новый ОписаниеТипов("Картинка");
// Описание типа уникального идентификатора:
НовУникальныйИдентификатор = Новый ОписаниеТипов("УникальныйИдентификатор");
// Описание типа объекта метаданых:
НовОбъектМетаданных = Новый ОписаниеТипов("ОбъектМетаданных, Строка");
// Описание составного типа (Например: строка+структура+справочник):
СписокМассив = Новый Массив;
СписокМассив.Добавить("Строка");
СписокМассив.Добавить("Структура");
СписокМассив.Добавить("СправочникСсылка.Номенклатура");
ОписаниеСоставногоТипа = Новый ОписаниеТипов(СписокМассив);
ЭтаФорма.РеквизитСписокЗначений.ТипЗначения = ОписаниеСоставногоТипа;
💡 Шаблоны (готовые модели) кода 1С 8.3 с тегом #Описание типов:
3
комментарии
Артур
30 авг 2024
Про составной тип написано же. В самом конце.
Программист 1С
29 фев 2024
Как задать составной тип (строка и справочник) с указанием длины строки ?
AmatolyEmelin
29 фев 2024
спасибо
____________________
Перепечатка текста и фотографий разрешена при наличии прямой ссылки на источник