📄 paymodesfrm.~pas
字号:
unit PayModesFrm;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, RzLabel, DB, DBClient, MConnect, Grids, DBGridEh, DbUtilsEh, EhLibCDS,
xEhLibCtl, RzPanel, RzSplit, ExtCtrls, RzBorder, RzDBEdit, Mask, DBCtrls,
RzButton,ModuleAction,ImgList, ActnList, TFlatSpeedButtonUnit, RzStatus, TFlatPanelUnit,
xBaseFrm, iMainFrm, ckDBClient, uDataTypes, Menus;
type
TFmPayModes = class(TXbaseForm)
Panel1: TPanel;
Commcnn: TDCOMConnection;
cdsPayModes: TckClientDataSet;
DsPayModes: TDataSource;
cdsPayModesPayModeNo: TStringField;
cdsPayModesPayModeName: TStringField;
cdsPayModesTimeLimit: TIntegerField;
cdsPayModesREMARK: TStringField;
cdsPayModesDataUsable: TBooleanField;
dbgPaymodes: TxDBGridEh;
Panel2: TRzPanel;
RzBitBtn9: TRzBitBtn;
RzBitBtn1: TRzBitBtn;
RzBitBtn2: TRzBitBtn;
RzBitBtn3: TRzBitBtn;
RzBitBtn6: TRzBitBtn;
RzBitBtn12: TRzBitBtn;
RzBitBtn11: TRzBitBtn;
ptBkPanel: TFlatPanel;
ptCaption: TRzMarqueeStatus;
FlatPanel2: TPanel;
BtnWhatIs: TFlatSpeedButton;
BtnHelp: TFlatSpeedButton;
FlatPanel3: TPanel;
BtnPopMenu: TFlatSpeedButton;
ActionList1: TActionList;
ActRefresh: TModlAction;
ActMore: TModlAction;
ActNew: TModlAction;
ActModify: TModlAction;
ActDelete: TModlAction;
ActFind: TModlAction;
ActPrint: TModlAction;
ActExit: TModlAction;
ActFieldsLayOut: TModlAction;
ActDataExport: TModlAction;
ActDesignReport: TModlAction;
ImageList1: TImageList;
TopPopMenu: TPopupMenu;
SetFields1: TMenuItem;
refresh1: TMenuItem;
procedure RzBitBtn1Click(Sender: TObject);
procedure RzBitBtn2Click(Sender: TObject);
procedure RzBitBtn3Click(Sender: TObject);
procedure RzBitBtn4Click(Sender: TObject);
procedure RzBitBtn5Click(Sender: TObject);
procedure RzBitBtn6Click(Sender: TObject);
procedure RzBitBtn7Click(Sender: TObject);
procedure RzBitBtn12Click(Sender: TObject);
procedure RzBitBtn11Click(Sender: TObject);
procedure cdsPayModesAfterScroll(DataSet: TDataSet);
procedure FormCreate(Sender: TObject);
procedure dbgPaymodesDblClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure RzBitBtn9Click(Sender: TObject);
procedure ActFieldsLayOutExecute(Sender: TObject);
procedure ActDataExportExecute(Sender: TObject);
procedure BtnPopMenuClick(Sender: TObject);
private
CdsFieldProperty :TckClientDataSet;
iFmMain:IMainForm;
iClientID :integer;
LocSetting: PLocSetting;
procedure SaveData;
public
SvrCommon,SvrPayStyle:TDisPatchConnection;
end;
var
FmPayModes: TFmPayModes;
Const
sFieldProPerty='Select * From SysFieldProperty '+
' Where TableName=''PayModes''';
implementation
uses ceGlobal,DbFuncs,ShowProGress, PayModeEdFrm,RepSelectFrm, FieldsLayoutFrm,DataExportFrm;
{$R *.dfm}
procedure TFmPayModes.FormCreate(Sender: TObject);
begin
inherited;
CdsFieldProperty:=TCkClientDataSet.Create(Self);
SetGressHint('正在登录到结算方式服务器...');
iFmMain:=Application.mainForm as iMainForm;
LocSetting := IFmMain.IFmMainEx.GetLocSetting;
SvrPayStyle:=IFmMain.GetConnection(Handle, '', 'CPayStyle.PayStyle');
SetGressHint('正在连接到公用信息服务器...');
SvrCommon:=iFmMain.GetConnection(Handle,'','CommonSvr.CommonRDM');
SetGressHint('读取用户操作权限...');
IFmMain.SetActionStatus(ActionList1, hInstance, self.ClassName);
iClientID:=IFmMain.IFmMainEx.ClientID;
cdsPayModes.RemoteServer := SvrPayStyle;
CdsFieldProPerty.ProviderName:='DspTemp';
CdsFieldProperty.RemoteServer := SvrCommon;
end;
procedure TFmPayModes.FormShow(Sender: TObject);
begin
SetGressHint('初始化本地环境...');
ptBkPanel.Color := TitlePanelColor;
ptCaption.FillColor := TitlePanelColor;
SetGridEhColor([dbgPaymodes]);
SysFieldXml(CdsFieldProPerty,sFieldProPerty,'TPayMode.Xml');
SetFieldProperty(CdsFieldProPerty,cdsPayModes, 'PayModes');
SetGressHint('读取历史单据...');
cdsPayModes.Open;
FreeGressForm;
end;
procedure TFmPayModes.RzBitBtn1Click(Sender: TObject);
begin
cdsPayModes.Append;
cdsPayModesDataUsable.Value:=True;
With TFmPayModeEdit.create(self) do
begin
if ShowModal=mrOk then
begin
cdsPayModes.Cancel;
cdsPayModes.CancelUpdates;
exit;
end;
SaveData;
end;
end;
procedure TFmPayModes.RzBitBtn2Click(Sender: TObject);
begin
cdsPayModes.Edit;
With TFmPayModeEdit.create(self) do
begin
if ShowModal=mrOk then
begin
cdsPayModes.Cancel;
cdsPayModes.CancelUpdates;
exit;
end;
if cdsPayModes.ApplyUpdates(0)>0 then
begin
Application.MessageBox('数据不能更新,可能已被使用!','提示',MB_ICONWARNING+MB_OK);
cdsPayModes.CancelUpdates;
end;
end;
end;
procedure TFmPayModes.RzBitBtn3Click(Sender: TObject);
begin
if cdsPayModes.IsEmpty then exit;
if MessageBox(handle,'确定要删除数据吗?','警告',MB_ICONWARNING+MB_YESNO)=IDNO then Exit;
cdsPayModes.Delete;
if cdsPayModes.ApplyUpdates(0)>0 then begin
Application.MessageBox('删除数据失败,数据已可能被使用!','警告',MB_ICONWARNING+MB_OK);
cdsPayModes.CancelUpdates;
end;
end;
procedure TFmPayModes.RzBitBtn4Click(Sender: TObject);
begin
if not(cdsPayModes.Bof) then
cdsPayModes.Prior;
end;
procedure TFmPayModes.RzBitBtn5Click(Sender: TObject);
begin
if not(cdsPayModes.Eof) then
cdsPayModes.next;
end;
procedure TFmPayModes.RzBitBtn6Click(Sender: TObject);
begin
try
cdsPayModes.Refresh;
except
end;
end;
procedure TFmPayModes.RzBitBtn7Click(Sender: TObject);
begin
cdsPayModes.Cancel;
end;
procedure TFmPayModes.RzBitBtn12Click(Sender: TObject);
begin
Try
cdsPayModesDataUsable.Value:=not(cdsPayModesDataUsable.Value);
Except
cdsPayModes.Edit;
cdsPayModesDataUsable.Value:=not(cdsPayModesDataUsable.Value);
end;
if RzBitBtn12.caption='使有效' then RzBitBtn12.caption:='使作废'
else RzBitBtn12.caption:='使有效';
SaveData;//保存数据
cdsPayModes.Refresh;
end;
procedure TFmPayModes.SaveData;
begin
if cdsPayModes.ApplyUpdates(0)>0 then
begin
Application.MessageBox('保存数据时发生错误!','提示',MB_ICONWARNING+MB_OK);
cdsPayModes.CancelUpdates;
end;
end;
procedure TFmPayModes.RzBitBtn11Click(Sender: TObject);
begin
inherited;
close;
end;
procedure TFmPayModes.cdsPayModesAfterScroll(DataSet: TDataSet);
begin
if cdsPayModesDataUsable.value then
RzBitBtn12.Caption:='使作废'
else
RzBitBtn12.Caption:='使有效';
end;
procedure TFmPayModes.dbgPaymodesDblClick(Sender: TObject);
begin
RzBitBtn2.Click;
end;
procedure TFmPayModes.RzBitBtn9Click(Sender: TObject);
begin
SelRepPrint(self.Name, [cdsPayModes], '结算方式');
end;
procedure TFmPayModes.ActFieldsLayOutExecute(Sender: TObject);
begin
SetFieldsLayOut(LocSetting^.FieldLayoutCfgFile, Name,
[dbgPayModes],'结算方式');
end;
procedure TFmPayModes.ActDataExportExecute(Sender: TObject);
begin
ExportData([cdsPayModes],'结算方式', '');
end;
procedure TFmPayModes.BtnPopMenuClick(Sender: TObject);
var tp:TPoint;
begin
tp.X:=BtnPopMenu.Left;
tp.Y:=BtnPopMenu.Top+BtnPopMenu.Height+1;
tp:=ClientToScreen(tp);
TopPopmenu.Popup(tp.x,tp.Y);
end;
initialization
RegisterClass(TFmPayModes);
finalization
UnRegisterClass(TFmPayModes);
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -