MyTetra Share
Делитесь знаниями!
Создание выборок
Время создания: 13.04.2017 15:22
Раздел: Global - Programming - Скрипт
Запись: xintrea/mytetra_db_mcold/master/base/1492086128d3zh07204n/text.html на raw.githubusercontent.com

3.3.2. Создание выборок

CreateFormEx и DoLookUpEx

3.3.2.1. Указание отображения выборки

В методах CreateFormCreateFormExDoLookUp и DoLookUpEx можно указывать выборку и отображение в формате <Выборка>.<Отображение>.

Пример:

<pascal>

CreateForm('', 'SEL_RPT_Report.List', fcfMDI);

<pascal>

Если при вызове CreateFormEx или DoLookUpEx были указаны два разных отображения: CreateFormEx(*, 'SEL_RPT_Report.List', fcfMDI, ['Representation', 'TabVisible','ExParam1'] ,['RoList', 0, 'Значение']); то будет использовано отображение, указанное после имени выборки.

3.3.2.2. Передача значений параметров фильтров

Реализована возможность передачи свойств атрибутов выборки и свойств атрибутов фильтра через параметры методов CreateFormEx и DoLookUpEx. Значения свойств атрибутов, переданные в скриптовые методы, перекрывают значения свойств атрибутов, загруженных в метаданных. Таким образом, через параметры можно указать видимость, редактируемость и т.д. атрибута. Свойства атрибутов задаются в формате "<имя атрибута>.<имя свойства атрибута>" или "<имя параметра фильтра>.<имя свойства параметра>".

Пример:

<pascal>

DoLookUpEx(''

, 'SEL_ExTransmitProperty.List'

, ['sCaption'], [], [], false

, ['filter$Flt_Attr1', 'filter$Flt_Attr1.ReadOnly', 'filter$Flt_Attr2.Visible', 'sSystemName.ReadOnly', 'dDate.Visible']

, ['Значение параметра', 1, 0, 1, 0]

);

</pascal>

Для атрибутов выборки могут быть переданы значения любых свойств. Для параметров фильтра - только значения свойств "Visible" и "ReadOnly". При этом, значения параметров фильтров, для которых был выставлен флаг "ReadOnly", не будут сбрасываться при вызове ResetFilter. Ранее имелась возможность в качестве параметров Ex-вызова передать значения параметров фильтрации. Это открывало большие возможности по предустановки значений фильтров согласно требованиям к открываемому для выбора окну. Однако в полной мере использовать эти возможности не удавалось, т.к. пользователь всегда мог изменить условие фильтрации или сбросить фильтр.

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

3.3.2.3. Открытие выборки в новом окне

Что-бы гарантировано открыть выборку в новом окне нужно передать параметр "CreatingMode" со значением "CreateNewForm".

Пример:

<pascal>

CreateFormEx('', 'SEL_RPT_Report.List', fcfMDI, ['CreatingMode'], ['CreateNewForm']);

</pascal>

 
MyTetra Share v.0.65
Яндекс индекс цитирования