ТМС:Сводник — различия между версиями
Материал из wiki.standart-n.ru
Lander (обсуждение | вклад) (→Передача параметра в справочник) |
Lander (обсуждение | вклад) (→Обновление справочника при редактировании записи в Grid) |
||
| (не показано 16 промежуточных версии этого же участника) | |||
| Строка 5: | Строка 5: | ||
| − | <code | + | <code> |
var | var | ||
qParams: TibQuery; | qParams: TibQuery; | ||
| Строка 13: | Строка 13: | ||
qParams.sql.text := 'select * from rdb$database where 1=:tek_id'; | qParams.sql.text := 'select * from rdb$database where 1=:tek_id'; | ||
qParams.prepare; | qParams.prepare; | ||
| − | + | // | |
//Определяем параметр | //Определяем параметр | ||
qParams.parambyname(''''Имя параметра'''').asstring := '''Значение параметра'''; | qParams.parambyname(''''Имя параметра'''').asstring := '''Значение параметра'''; | ||
| − | + | // | |
//Вызываем справочник | //Вызываем справочник | ||
| − | ShowWDict('''ID справочника''','''', qParams.params); | + | ShowWDict('''ID справочника''',''''''', qParams.params); |
finally | finally | ||
qParams.Free; | qParams.Free; | ||
| Строка 24: | Строка 24: | ||
end; | end; | ||
</code> | </code> | ||
| + | |||
| + | === Управление элементами в панели управления === | ||
| + | |||
| + | работает тока в своднике | ||
| + | var | ||
| + | pn: TAdvPanel; | ||
| + | begin | ||
| + | pn:=gsender.FindComponent('pnShow'); | ||
| + | '''//Скрыть элемент статистики ... ...''' | ||
| + | pn:=gsender.FindComponent('pnStat'); pn.Visible:=False; | ||
| + | '''//Скрыть поиск''' | ||
| + | pn:=gsender.FindComponent('ApnSearch');pn.Visible:=False; | ||
| + | '''//Скрыть фильтр''' | ||
| + | pn:=gsender.FindComponent('ApnFilter'); pn.Visible:=False; | ||
| + | pn:=gsender.FindComponent('AdvPanel1'); pn.Visible:=False; | ||
| + | pn:=gsender.FindComponent('AdvPanel3'); | ||
| + | '''//Скрыть элемент печать/экспорт''' | ||
| + | pn:=gsender.FindComponent('ApnExport'); pn.Visible:=False; | ||
| + | // | ||
| + | pn:=gsender.FindComponent('ApnChilds'); pn.Visible:=False; | ||
| + | pn:=gsender.FindComponent('pnTop'); | ||
| + | pn.height:=120; | ||
| + | end; | ||
| + | |||
| + | ===Добавление своих кнопок === | ||
| + | |||
| + | В ТМС инициализации создаем отдельну. форму с кнопками(Form), где кнопки помещаем на панель (TPanel) -pnButtons | ||
| + | |||
| + | var | ||
| + | frm: Tform2; | ||
| + | pn: TPanel; | ||
| + | begin | ||
| + | pn:=gsender.FindComponent('pnTop'); | ||
| + | frm:=Tform2.Create(nil); | ||
| + | frm.pnButtons.Parent:=pn; | ||
| + | frm.pnButtons.Align:=alLeft; | ||
| + | frm.pnButtons.Left:=gSender.Width; | ||
| + | end; | ||
| + | |||
| + | ===Получение ID записи на которой стоит курсор === | ||
| + | |||
| + | uses | ||
| + | unFrameCustomDict,UnMain,dxExEdtr, dxCntner, dxTL, dxDBCtrl, dxDBGrid | ||
| + | begin | ||
| + | s:=inttostr(gSender.pgbList.FocusedNode.Values[gSender.pgbList.ColumnByFieldName('ID').Index]); | ||
| + | end | ||
| + | |||
| + | |||
| + | ===Обновление справочника при редактировании записи в Grid=== | ||
| + | |||
| + | uses | ||
| + | Classes,unFrameCustomDict, unMain, Graphics, Controls, Forms, Dialogs; | ||
| + | procedure ActionAfterEditField; | ||
| + | var frame:TFrameCustomDict; | ||
| + | begin | ||
| + | frame:=gsender.owner; | ||
| + | frame.ImmediateSelect; | ||
| + | end; | ||
| + | begin | ||
| + | gsender.ActionAfterEditField:='ActionAfterEditField'; | ||
| + | end; | ||
Текущая версия на 11:59, 18 августа 2023
Содержание
Полезные скрипты для работы с ТМС, WDict и Аналитическими отчетами
Передача параметра в справочник
var
qParams: TibQuery;
begin
qParams := dm.TempQuery(nil);
try
qParams.sql.text := 'select * from rdb$database where 1=:tek_id';
qParams.prepare;
//
//Определяем параметр
qParams.parambyname('Имя параметра').asstring := Значение параметра;
//
//Вызываем справочник
ShowWDict('ID справочника,'', qParams.params);
finally
qParams.Free;
end;
end;
Управление элементами в панели управления
работает тока в своднике
var
pn: TAdvPanel;
begin
pn:=gsender.FindComponent('pnShow');
//Скрыть элемент статистики ... ...
pn:=gsender.FindComponent('pnStat'); pn.Visible:=False;
//Скрыть поиск
pn:=gsender.FindComponent('ApnSearch');pn.Visible:=False;
//Скрыть фильтр
pn:=gsender.FindComponent('ApnFilter'); pn.Visible:=False;
pn:=gsender.FindComponent('AdvPanel1'); pn.Visible:=False;
pn:=gsender.FindComponent('AdvPanel3');
//Скрыть элемент печать/экспорт
pn:=gsender.FindComponent('ApnExport'); pn.Visible:=False;
//
pn:=gsender.FindComponent('ApnChilds'); pn.Visible:=False;
pn:=gsender.FindComponent('pnTop');
pn.height:=120;
end;
Добавление своих кнопок
В ТМС инициализации создаем отдельну. форму с кнопками(Form), где кнопки помещаем на панель (TPanel) -pnButtons
var
frm: Tform2;
pn: TPanel;
begin
pn:=gsender.FindComponent('pnTop');
frm:=Tform2.Create(nil);
frm.pnButtons.Parent:=pn;
frm.pnButtons.Align:=alLeft;
frm.pnButtons.Left:=gSender.Width;
end;
Получение ID записи на которой стоит курсор
uses
unFrameCustomDict,UnMain,dxExEdtr, dxCntner, dxTL, dxDBCtrl, dxDBGrid
begin
s:=inttostr(gSender.pgbList.FocusedNode.Values[gSender.pgbList.ColumnByFieldName('ID').Index]);
end
Обновление справочника при редактировании записи в Grid
uses Classes,unFrameCustomDict, unMain, Graphics, Controls, Forms, Dialogs; procedure ActionAfterEditField; var frame:TFrameCustomDict; begin frame:=gsender.owner; frame.ImmediateSelect; end; begin gsender.ActionAfterEditField:='ActionAfterEditField'; end;