ТМС:Сводник — различия между версиями
Материал из wiki.standart-n.ru
Lander (обсуждение | вклад) (→Управление элементами в панели управления) |
Lander (обсуждение | вклад) (→Обновление справочника при редактировании записи в Grid) |
||
(не показано 10 промежуточных версии этого же участника) | |||
Строка 27: | Строка 27: | ||
=== Управление элементами в панели управления === | === Управление элементами в панели управления === | ||
+ | работает тока в своднике | ||
var | var | ||
pn: TAdvPanel; | pn: TAdvPanel; | ||
Строка 45: | Строка 46: | ||
pn:=gsender.FindComponent('pnTop'); | pn:=gsender.FindComponent('pnTop'); | ||
pn.height:=120; | 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; | 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;