MyGrid
MyGrid - это функция
Позволяет высветить произвольную таблицу на экране
MyGrid( <Tbl>, <DescTbl>, <DescFld>, <DescHK> [,iRefr=False] [,isCloseTbl=False] [,modal=False] [,PrepCT=True] [,FormType=TFormBrowse] [,IsVisPublic=False] [,IsCloseConnectQuery=False] [,IsPrvs=False] [,IsWaitEndProcess=False] [,RefreshInterval=0] )
MyGrid( 1.Таблица, 2.Описание таблицы, 3.Поля таблицы, 4.Клавиши таблицы )
DescTbl,DescFld,DescHK - массивы массивов ( первый - двумерный, второй и третий - трехмерные )
isRefr - спр-к или бд
isCloseTbl - закрыть бд при закрытии формы
PrepCT - допустимость выч.полей
FormType - тип формы
modal - модальный режим
IsVisPublic - True видимость "внешних" Public переменных
IsCloseConnectQuery - True уничтожение соединения Tbl
IsPrvs - True описание таблицы Prvs
IsWaitEndProcess - false ожидать заверщения процесса
RefreshInterval - если > 0 включается автомтический Refresh таблицы по таймеру (в мсек)
Использование
Примеры
str_res := [ GrpRecord( ' { _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11 } ' ) ] tbl := { { 'Title', 'Заявка' }, { 'ShowType', 2 }, { 'ResultExpr', str_res } } fld := { ; { { 'Fldname', '_1' }, { 'FldTitl', 'Код' }, { 'PreBlk', false } }, ; { { 'Fldname', '_2' }, { 'FldTitl', 'Наименование' }, { 'PreBlk', false }, { 'Picture', '(c|40)' } }, ; { { 'Fldname', '_3' }, { 'FldTitl', 'Количество' }, { 'AfterUpd', 'iif( Ascane( SelRows(), RecNo() ) = 0, DoAKeyF1()), "NOREST"' }, { 'Picture', '!999999999.9' } }, ; { { 'Fldname', '_5' }, { 'FldTitl', 'ед.изм.' }, { 'PreBlk', false } }, ; { { 'Fldname', '_6' }, { 'FldTitl', 'Цена' }, { 'PreBlk', false }, { 'Picture', '!9999999.99' } }, ; { { 'Fldname', '_8' }, { 'FldTitl', 'Поставщик' }, { 'PreBlk', false } }, ; { { 'Fldname', '_10' }, { 'FldTitl', 'Склад' }, { 'PreBlk', false } } ; } key := { ; { { 'KeyName', 'F6' } }, ; { { 'KeyName', 'F7' }, { 'TEXT', 'Заказ' }, { 'BLK', 'CloseForm( GetForm(), false ), SetProperty( "ModalResult", 1, GetForm() )' } }, ; { { 'KeyName', 'ENTER' }, { 'TEXT', 'ENTER' }, { 'BLK', 'GridEdit( true )' } } ; } aa := MyGrid( _, tbl, fld, key, ~Modal := true )
MyGrid( OpenKlsf( 'R09' ) )
MyGrid( OpenFData( 'REPS1215', 'REPS', false, OpdataPath, 'REPS' ) )