Тип бизнес процесса 1с в запросе

Платформа 1С имеет две конструкции, которые позволяют при запросах работать с типами данных. Значение ТИП в системе, как правило, используется для сравнений, наложений различных условий, в группировках, упорядочивании и т.п. Для работы с типами и необходимы функции, которые имеют названия ТИПЗНАЧЕНИЯ и ТИП.

ТИПЗНАЧЕНИЯ (или Выражение). Имеет параметр куда может передаваться то значение, для которого необходимо определить тип. Данная функция может вернуть тип переданного в нее значения.

ТИП. Функция, позволяющая установить условие на тип.

Приведем пример на документе «ПродажаТоваров», согласно которому, покупки могут совершать как сторонние покупатели, так и сотрудники. Нам необходимо получить тип поля в результате запроса. Для этого, нужно осуществить запрос документу «ПродажаТоваров» и выбрать все документы, связанные с продажей. В них будет обозначено наименование покупателя, а применив функцию ТИПЗНАЧЕНИЯ, можно определить тип покупателя (контрагенты, сотрудники).

Что такое бизнес-процесс в 1С: предприятие 8?

Также можно произвести необходимый отбор с помощью функции ТИП, причем ее достаточно удобно применять с предыдущей функцией (ТИПЗНАЧЕНИЯ). Используя соответствующий запрос, можно вывести только те данные, где в поле «ТипПокупателя» будут лишь, например, «Сотрудники» или «Контрагенты». Также, для того, чтобы связать ТИПЗНАЧЕНИЯ и ТИП (ТИПЗНАЧЕНИЯ + ТИП) может помочь функция ССЫЛКА.

Хотите получать подобные статьи по четвергам?
Быть в курсе изменений в законодательстве?
Подпишитесь на рассылку

Нажатием кнопки я принимаю условия Оферты по использованию сайта и согласен с Политикой конфиденциальности

Источник: www.1cbit.ru

Тип бизнес процесса 1с в запросе

В предыдущей статье типы и значения 1С — мы начали обсуждать что такое типы значений 1С и преобразование типов 1С.

Сегодня мы поговорим подробнее про типы объектов конфигурации 1С (тип документа 1С, тип справочника 1С и др.)

Читайте также:  Такой активный рост бизнеса стал

Так как в программном коде мы работаем со значениями, то периодически требуется знать их тип. Тип 1С всегда указывается в метаданных у реквизитов — в справочниках, документах.

Работа с типами 1С часто используется:

  • Условия в программе
    Разные действия в зависимости от типа значения 1С в конструкции «Если … Тогда …»
  • Ограничения при работе в интерфейсе
    Запрет или разрешение пользователю вводить в поле на форме значения определенных типов 1С.
  • Определение фактического параметра функции/процедуры
    Если параметр функции/процедуры может быть любого типа 1С, то нужно его определить, чтобы правильно получить значение.

Тип 1С можно получить:

  • Определить тип фактического значения 1С
  • Значения-объекты имеют свойства, в которых указан разрешенный тип 1С (например типы 1С разрешенные в колонке таблицы, в поле на форме, в метаданных) или методы, которые возвращают эти типы 1С
  • Из метаданных – можно получить тип 1С так, как он указан в метаданных в конфигураторе.

Типы 1С можно разделить на три вида:

  • Базовые типы 1С
  • Типы 1С базы данных (ссылочные, объекты)
  • Типы 1С.

Определение типа 1С и сравнение типов 1С

Узнать тип значения 1С можно с помощью функции ТипЗнч(Переменная)

Чтобы понять какой тип 1С эта функция вернула – нужно указать нужный нам Тип(«ИмяТипа»)

Например, определение (сравнение) типа 1С переменной:
Если ТипЗнч(Переменная) = Тип(«ИмяТипа») Тогда

Какие типы писать в качестве ИмяТипа?

Базовые типы 1С — число, строка, дата, булево.

Например:
Знч = 12;
Если ТипЗнч(Знч) = Тип(«Число») Тогда
ИначеЕсли Знч = Тип(«Строка») Тогда
ИначеЕсли Знч = Тип(«Дата») Тогда
ИначеЕсли Знч = Тип(«Булево») Тогда
КонецЕсли;

Типы базы данных

1С хранит данные в базе данных, но не в виде отдельных записей, а в виде объектов.

Читайте также:  Бизнес увлекательнейшая игра в которой

Большинство сохраняемых объектов (в том числе: справочники, документы, перечисления, бизнес-процессы, задачи) доступны в виде Объекта (для изменения и записи) и в виде Ссылки (для чтения). Подробнее см. «Ссылки и объекты».

Например:
Знч = Справочники.Организации.ПустаяСсылка();
Если ТипЗнч(Знч) = Тип(«СправочникСсылка.Организации») Тогда
ИначеЕсли Знч = Тип(«СправочникОбъект.Организации») Тогда
ИначеЕсли ТипЗнч(Знч) = Тип(«ДокументСсылка.ПоступлениеТоваров») Тогда
ИначеЕсли Знч = Тип(«ДокументОбъект.ПоступлениеТоваров») Тогда
КонецЕсли;

Регистры могут быть представлены различными типами. Имя типа регистра составное:
РегистрТипрегистраТипдоступа.ИмяРегистра

Типы 1С регистров:

  • Сведений
  • Накопления
  • Бухгалтерии
  • Расчета.

Типов доступов к регистру несколько. Чаще всего используются:

  • НаборЗаписей
  • Список
  • Выборка
  • Запись
  • КлючЗаписи.

Итого, пример:
Если ТипЗнч(Знч) = Тип(«РегистрСведенийСписок.ИмяРегистра») Тогда
ИначеЕсли Знч = Тип(«РегистрНакопленияНаборЗаписей.ИмяРегистра») Тогда
КонецЕсли;

Язык 1С позволяет работать со множеством объектов, создаваемых динамически в программе, например – массив, список значений, таблица значений, структура…

Такие типы 1С указываются по их названию (одним словом, без пробелов). Например:
Если ТипЗнч(Знч) = Тип(«Массив») Тогда
ИначеЕсли Знч = Тип(«СписокЗначений») Тогда
КонецЕсли;

Определение значения ссылочного типа 1С

Работа со всеми объектами базы данных (справочники, документы…) ведется через ссылки. Например, если мы хотим в документе сделать реквизит – справочник, то его тип 1С будет «СправочникСсылка.ИмяСправочника».

Мы можем определить является ли ссылка справочником или документом с помощью метода ТипВсеСсылки()

Например:
Значение = Справочники.Организации.ПустаяСсылка();
Если Справочники.ТипВсеСсылки().Содержит( ТипЗнч(Значение) ) Тогда
//это справочник
ИначеЕсли Документы.ТипВсеСсылки().Содержит( ТипЗнч(Значение)) Тогда
//это документ
КонецЕсли;

Работа с типами 1С в запросе

В запросе тип 1С можно проверить двумя способами.

Первый – аналогично описанному, но в имени типа 1С не указывается «Ссылка» или «Объект», то есть вместо «СправочникСсылка.Организации» пишем «Справочник.Организации»

Только зарегистрированные пользователи VIP группы могут видеть этот контент.

Получение доступных типов 1С

У множества объектов есть свойство .ТипЗначения, которое содержит список типов 1С:

  • Поле на форме толстого клиента
    ЭлементыФормы.ИмяПоля.ТипЗначения
  • Поле на форме тонкого клиента (исключение: называется ДоступныеТипы)
    Элементы.ИмяПоля.ДоступныеТипы
  • Колонка таблицы значений, дерева значений
  • Реквизит формы
  • Элемент отбора
Читайте также:  Бизнес на корове или быке

Как работать с этим списком типов 1С в поле .ТипЗначения – см. «ОписаниеТипов» в разделе «Язык 1С».

Работа с типами 1С реквизитов в метаданных конфигурации

При добавлении и редактировании реквизитов в конфигураторе программист указывает тип(ы) 1С реквизита. В программном коде на языке 1С можно получить (узнать) тип(ы) 1С реквизита.

Подробнее про работу с метаданными см. далее «Работа с метаданными».

  • У объекта 1С вызвать метод Метаданные(), который возвращает метаданные конкретного объекта и далее работать со списком реквизитов (и реквизитов табличной части)
    Документы.ПоступлениеТоваров.ПустаяСсылка().Метаданные().Реквизиты
  • Использовать глобальную переменную «Метаданные», которая возвращает все метаданные конфигурации, и далее выйти на реквизиты конкретного объекта
    Метаданные.Документы.ПоступлениеТоваров.Реквизиты

У реквизита есть свойство .Тип, которое содержит список типов 1С, установленный в конфигураторе у этого реквизита.

Как работать с этим списком типов 1С – см. «ОписаниеТипов» в разделе «Язык 1С».

Указать фильтр типов 1С

У многих объектов возможно указать фильтр типов значений 1С, возможных к использованию, например:

  • Список значений (.ДоступныеЗначения)
  • Поле формы управляемого клиента (.ДоступныеТипы)

Там, где фильтра не доступен к изменению, доступно указать фильтр в методе объекта. Например у колонки таблицы (дерева) значений есть .ТипЗначения и мы не можем его изменять, но при добавлении колонки с помощью метода .Добавить() вторым параметром можно указать список доступных типов 1С.

Чтобы указать список типов 1С для фильтра – используется список типов 1С, как с ним работать – см. «Описание типов» в разделе «Язык 1С».

Проголосовать за этот пост:

Источник: howknow1c.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
Бизнес для женщин