⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 paymodesfrm.pas

📁 医药连锁经营管理系统源码
💻 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);
    procedure cdsPayModesAfterOpen(DataSet: TDataSet);
  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;

procedure TFmPayModes.cdsPayModesAfterOpen(DataSet: TDataSet);
begin
  dbgPayModes.SetAutoSort('');
end;

initialization
 RegisterClass(TFmPayModes);
finalization
 UnRegisterClass(TFmPayModes);


end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -