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

📄 selretexcludefrm.pas

📁 医药连锁经营管理系统源码
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit SelRetExcludeFrm;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ceBaseBillFrm, ActnList, ModuleAction, ImgList, TB2Dock,
  ExtCtrls, RzPanel, TB2Item, TB2Toolbar, DB, DBClient, MConnect, RzDBBnEd,
  ComCtrls, RzDTP, RzDBDTP, StdCtrls, Mask, RzEdit, RzDBEdit, RzLabel,RzDBLbl,
  Grids, DBGridEh, DbUtilsEh, EhLibCDS, xEhLibCtl, RzCmboBx, RzDBCmbo,IMainFrm, Menus, Buttons,
  RzButton, ckDBClient,uGlobal,DbFuncs,ShowProGress,uDataTypes, ceGlobal;

type
  TFmSelRetExclude = class(TceBaseBillForm)
    DsSelRetExcludeDtl: TDataSource;
    CdsSelRetExcludeDtl: TckClientDataSet;
    DsSelRetExclude: TDataSource;
    CdsSelRetExclude: TckClientDataSet;
    RzLabel1: TRzLabel;
    RzDBEdit1: TRzDBEdit;
    RzLabel2: TRzLabel;
    RzDBDateTimePicker1: TRzDBDateTimePicker;
    RzLabel5: TRzLabel;
    RzLabel8: TRzLabel;
    Lab_State: TLabel;
    Comcnn: TDCOMConnection;
    Label7: TLabel;
    edCustName: TRzDBButtonEdit;
    RzDBEdit9: TRzDBEdit;
    RzDBEdit8: TRzDBEdit;
    dbgSelRetOrderDtl: TxDBGridEh;
    RzLabel21: TRzLabel;
    RzDBEdit6: TRzDBEdit;
    RzLabel7: TRzLabel;
    RzDBLabel1: TRzDBLabel;
    RzLabel16: TRzLabel;
    RzDBLabel2: TRzDBLabel;
    RzDBButtonEdit2: TRzDBButtonEdit;
    ActFinish: TModlAction;
    TBItem18: TTBItem;
    Label1: TLabel;
    RzDBEdit2: TRzDBEdit;
    RzDBButtonEdit1: TRzDBButtonEdit;
    RzLabel12: TRzLabel;
    RzLabel9: TRzLabel;
    RzDBEdit3: TRzDBEdit;
    RzDBEdit7: TRzDBEdit;
    CdsSelRetExcludeBillNo: TStringField;
    CdsSelRetExcludeFDate: TDateTimeField;
    CdsSelRetExcludeEmpNo: TStringField;
    CdsSelRetExcludeEmpName: TStringField;
    CdsSelRetExcludeCustNo: TStringField;
    CdsSelRetExcludeCustName: TStringField;
    CdsSelRetExcludeLinkMan: TStringField;
    CdsSelRetExcludeCustAddr: TStringField;
    CdsSelRetExcludeCarrKind: TStringField;
    CdsSelRetExcludeCarrAddr: TStringField;
    CdsSelRetExcludeRemark: TStringField;
    CdsSelRetExcludeInvoice: TStringField;
    CdsSelRetExcludeCreater: TStringField;
    CdsSelRetExcludeCreatTime: TDateTimeField;
    CdsSelRetExcludeMender: TStringField;
    CdsSelRetExcludeUpdateTime: TDateTimeField;
    CdsSelRetExcludeGrup: TIntegerField;
    CdsSelRetExcludeAdsSelRetExcludeDtl: TDataSetField;
    CdsSelRetExcludeDtlBillNo: TStringField;
    CdsSelRetExcludeDtlItemNo: TIntegerField;
    CdsSelRetExcludeDtlGoodsID: TStringField;
    CdsSelRetExcludeDtlName: TStringField;
    CdsSelRetExcludeDtlSpecs: TStringField;
    CdsSelRetExcludeDtlUnit: TStringField;
    CdsSelRetExcludeDtlCheckQty: TBCDField;
    CdsSelRetExcludeDtlExcludeQty: TBCDField;
    CdsSelRetExcludeDtlAmount: TBCDField;
    CdsSelRetExcludeDtlBatchNo: TStringField;
    CdsSelRetExcludeDtlValidDate: TDateTimeField;
    CdsSelRetExcludeDtlExcludeCause: TStringField;
    CdsSelRetExcludeDtlCustGoodsID: TStringField;
    CdsSelRetExcludeDtlRemark: TStringField;
    CdsSelRetExcludePBillNo: TStringField;
    CdsSelRetExcludeAudit: TStringField;
    CdsSelRetExcludeTransfer: TBooleanField;
    RzLabel3: TRzLabel;
    RzDBEdit10: TRzDBEdit;
    RzLabel10: TRzLabel;
    RzDBEdit4: TRzDBEdit;
    RzLabel11: TRzLabel;
    RzDBEdit5: TRzDBEdit;
    procedure ActAddSubItemExecute(Sender: TObject);
    procedure ActDelSubItemExecute(Sender: TObject);
    procedure CdsSelRetExcludeAfterScroll(DataSet: TDataSet);
    procedure FormCreate(Sender: TObject);
    procedure CdsSelRetExcludeDtlNewRecord(DataSet: TDataSet);
    procedure CdsSelRetExcludeDtlBeforeInsert(DataSet: TDataSet);
    procedure RzDBButtonEdit1ButtonClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure CdsSelRetExcludeCustNoChange(Sender: TField);
    procedure ActSaveExecute(Sender: TObject);
    procedure CdsSelRetExcludeReconcileError(DataSet: TCustomClientDataSet;
      E: EReconcileError; UpdateKind: TUpdateKind;
      var Action: TReconcileAction);
    procedure CdsSelRetExcludeEmpNOChange(Sender: TField);
    procedure ActAuditExecute(Sender: TObject);
    procedure ActRevertExecute(Sender: TObject);
    procedure ActFieldLayoutExecute(Sender: TObject);
    procedure ActDataExportExecute(Sender: TObject);
    procedure edCustNameButtonClick(Sender: TObject);
    procedure RzDBButtonEdit2ButtonClick(Sender: TObject);
    procedure ActQueryExecute(Sender: TObject);
    procedure dbgSelRetOrderDtlEditButtonClick(Sender: TObject);
    procedure CdsSelRetExcludeDtlGoodsIDChange(Sender: TField);
    procedure CdsSelRetExcludeNewRecord(DataSet: TDataSet);
  private
    CdsFieldProperty :TckClientDataSet;
    iClientID :Integer;
    ItemId :Integer;
    bBrowGoods,CanAudit,CanRevert:Boolean;
    slPayModes:TStrings;
    LocSetting: PLocSetting;
    SvrSelRetExclude,SvrCommon:TDispatchConnection;
    BeforeEmpNo,BeforeGoodsID,BeforeCustNo :String;
    procedure ParseGoodsInfo;
  protected
  public
    Function DoSome(cType: PChar; Values: Variant): Variant; override;
  end;

Const
  sFieldProPerty='Select * From SysFieldProperty '+
        ' Where TableName in (''SelRetExclude'', ''SelRetExcludeDtl'', ''Goodses'')';

var
  FmSelRetExclude :TFmSelRetExclude;

implementation

uses SelectCustFrm, SelectEmpFrm, SelectCustLinkManFrm, SelectGoodsFrm,
  FieldsLayoutFrm, DataExportFrm;
{$R *.dfm}

procedure TFmSelRetExclude.ActAddSubItemExecute(Sender: TObject);
begin
  If FEditMode=0 Then Exit;
  If Not(CdsSelRetExclude.State In dsEditModes) Then Exit;
  CdsSelRetExcludeDtl.Append;
End;

procedure TFmSelRetExclude.ActDelSubItemExecute(Sender: TObject);
begin
  If FEditMode=0 Then Exit;
  if CdsSelRetExcludeDtl.IsEmpty then Exit;
  CdsSelRetExcludeDtl.Delete;
end;

procedure TFmSelRetExclude.CdsSelRetExcludeAfterScroll(DataSet: TDataSet);
begin
  If CdsSelRetExcludeTransfer.Value Then Begin
    ActAudit.Enabled:=False And CanAudit;
    ActRevert.Enabled:=True And CanRevert;
    Lab_State.Caption:='单据状态:已审核';
    Lab_State.Font.Color:=clRed;
  End Else Begin
    ActAudit.Enabled:=True And CanAudit;
    ActRevert.Enabled:=False And CanRevert;
    Lab_State.Caption:='单据状态:未审核';
    Lab_State.Font.Color:=clHotLight;
  End;
end;

procedure TFmSelRetExclude.FormCreate(Sender: TObject);
begin
  inherited;
  slPayModes:=TStringList.Create;
  CdsFieldProperty:=TCkClientDataSet.Create(Self);
  LocSetting := IFmMain.IFmMainEx.GetLocSetting;
  SetGressHint('正在登录到销退拒收服务器...');
  SvrSelRetExclude:=iFmMain.GetConnection(Handle,'','ckSalesBase.SalesBase');
  SetGressHint('正在连接到公用信息服务器...');
  SvrCommon:=iFmMain.GetConnection(Handle,'','CommonSvr.CommonRDM');
  SetGressHint('读取用户操作权限...');
  CanAudit := ActAudit.Enabled;
  CanRevert:= ActCancel.Enabled;
  IFmMain.SetActionStatus(ActionList1, hInstance, self.ClassName);
  iClientID:=LogonInfo^.ClientID;
  sBillNoList.Text := SvrSelRetExclude.AppServer.GetCurrMonthBills(iClientID, 'SelRetExclude');
  CdsSelRetExclude.RemoteServer:=SvrSelRetExclude;
  CdsFieldProPerty.ProviderName:='DspTemp';
  CdsFieldProPerty.RemoteServer:=SvrCommon;
  MasterDataSet := CdsSelRetExclude;
  SetLength(FDetailDataSets, 1);
  FDetailDataSets[0] := CdsSelRetExcludeDtl;
  BillType := 'SelRetExclude';
  RepDataSetNames := '销退拒收;拒收明细';
end;

procedure TFmSelRetExclude.FormShow(Sender: TObject);
begin
  SetGressHint('初始化本地环境...');
  SetGridEhColor([dbgSelRetOrderDtl]);
  LoadFieldsLayOut(LocSetting^.FieldLayoutCfgFile, Name, [dbgSelRetOrderDtl]);
  SysFieldXml(CdsFieldProPerty,sFieldProPerty,'TFmSelRetExclude.Xml');
  SetFieldProperty(CdsFieldProPerty,CdsSelRetExclude, 'SelRetExclude');
  SetFieldProperty(CdsFieldProPerty,CdsSelRetExcludeDtl, 'SelRetExcludeDtl,Goodses');
  SetGressHint('读取历史单据...');
  SetCurrBillIdx(0);
  inherited;
  FreeGressForm;
end;

procedure TFmSelRetExclude.CdsSelRetExcludeDtlNewRecord(DataSet: TDataSet);
begin
  BeforeGoodsID:='';
  CdsSelRetExcludeDtlBillNo.Value:=CdsSelRetExcludeBillNo.Value;
  CdsSelRetExcludeDtlItemNo.Value := ItemId+1;
end;

procedure TFmSelRetExclude.CdsSelRetExcludeDtlBeforeInsert(DataSet: TDataSet);
begin
  inherited;
  ItemId := GetFieldMaxInt(CdsSelRetExcludeDtl,'ItemNO')
end;

procedure TFmSelRetExclude.RzDBButtonEdit1ButtonClick(Sender: TObject);
Var sEmpNo,sEmpName:String;
begin
  If FEditMode=0 Then Exit;
  sEmpNo := CdsSelRetExcludeEmpNO.Value;
  If SelectEmp(sEmpNo,sEmpName) Then begin
    CdsSelRetExcludeEmpNO.Value := sEmpNo;
    CdsSelRetExcludeEmpName.Value := sEmpName;
  End;
End;

procedure TFmSelRetExclude.CdsSelRetExcludeCustNoChange(Sender: TField);
Var
  sCustNo,sCustName,LogText:String;
begin
  IF FEditMode=0 Then Exit;
  sCustNo:=CdsSelRetExcludeCustNo.Value;
  if sCustNo=BeforeCustNo Then Exit;
  If sCustNo='' Then Begin
    CdsSelRetExcludeCustName.Value:='';
    Exit;
  End;
  BeforeCustNo:=sCustNo;
  sCustName:=VarToStr(SvrCommon.AppServer.GetCustInfo(iClientID,sCustNo,1,'CustName',LogText));
  CdsSelRetExcludeCustName.Value:=sCustName;
  If LogText<>'' Then Begin
    Messagebox(Handle,PChar(LogText),nil,16);
    Abort;
  End;
end;

procedure TFmSelRetExclude.ActSaveExecute(Sender: TObject);
begin

⌨️ 快捷键说明

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