.#selectcustlinkmanfrm.pas.1.4
来自「医药连锁经营管理系统源码」· 4 代码 · 共 170 行
4
170 行
unit SelectCustLinkManFrm;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, TFlatSpeedButtonUnit, ExtCtrls, RzStatus, TFlatPanelUnit,
ActnList, ModuleAction, DB, DBClient, ckDBClient, MConnect, Grids,
DBGridEh, DbUtilsEh, EhLibCDS, xEhLibCtl, StdCtrls, RzCmboBx, Mask, RzEdit, RzButton, ImgList,
iMainFrm, DBCtrls, RzDBNav, RzPanel;
type
TFrmSelectCustLinkMan = class(TForm)
dbgSelectCustLinkMan: TxDBGridEh;
Panel1: TPanel;
Panel2: TPanel;
DComm: TDCOMConnection;
CdsSelectCustLinkMan: TckClientDataSet;
DsSelectCustLinkMan: TDataSource;
Label1: TLabel;
edValue: TRzEdit;
RzPanel3: TRzPanel;
RzDBNavigator1: TRzDBNavigator;
RzBitBtn2: TRzBitBtn;
ImageList1: TImageList;
RzBitBtn1: TRzBitBtn;
CdsSelectCustLinkManCustNo: TStringField;
CdsSelectCustLinkManLinkMan: TStringField;
CdsSelectCustLinkManNickName: TStringField;
CdsSelectCustLinkManSex: TStringField;
CdsSelectCustLinkManBirthDay: TDateTimeField;
CdsSelectCustLinkManDept: TStringField;
CdsSelectCustLinkManDuty: TStringField;
CdsSelectCustLinkManAddress: TStringField;
CdsSelectCustLinkManTel1: TStringField;
CdsSelectCustLinkManMobile: TStringField;
procedure FormCreate(Sender: TObject);
procedure RzBitBtn1Click(Sender: TObject);
procedure dbgSelectCustLinkManDblClick(Sender: TObject);
procedure RzBitBtn2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure CdsSelectCustLinkManBeforeGetRecords(Sender: TObject;
var OwnerData: OleVariant);
procedure FormShow(Sender: TObject);
procedure edValueChange(Sender: TObject);
procedure edValueKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
IFmMain:iMainForm;
SvrCustLinkMan:TDispatchConnection;
CdsFieldProperty :TckClientDataSet;
{ Private declarations }
public
sSendCustNo : String;
{ Public declarations }
end;
var
FrmSelectCustLinkMan: TFrmSelectCustLinkMan;
Function SelectCustLinkMan(Var sCustNo:String;Var sLinkMan:String) : Boolean;
implementation
uses DBFuncs;
Const
sFieldProPerty='Select * From SysFieldProperty Where TableName=''CustLinkmans''';
{$R *.dfm}
Function SelectCustLinkMan(Var sCustNo:String;Var sLinkMan:String) : Boolean;
Begin
Result := false;
with TFrmSelectCustLinkMan.Create(NIl) do begin
sSendCustNo := sCustNo;
If Not(CdsSelectCustLinkMan.Active) Then CdsSelectCustLinkMan.Open;
CdsSelectCustLinkMan.Filtered := False;
if sLinkMan<>'' Then Begin
edValue.Text := sLinkMan;
CdsSelectCustLinkMan.Filter := ' LinkMan ='''+sLinkMan+'''';
End;
CdsSelectCustLinkMan.Filtered := True;
if ShowModal=mrOk then begin
sLinkMan := CdsSelectCustLinkMan.FieldByName('LinkMan').AsString;
Result := true;
End;
End;
End;
procedure TFrmSelectCustLinkMan.FormCreate(Sender: TObject);
begin
IFmMain := (Application.MainForm as IMainForm);
SvrCustLinkMan := IFmMain.GetConnection(Handle,'','CommonSvr.CommonRDM');
CdsSelectCustLinkMan.RemoteServer := SvrCustLinkMan;
CdsFieldProperty := TckClientDataSet.Create(Self);
CdsFieldProPerty.ProviderName:='DspTemp';
CdsFieldProPerty.RemoteServer:=SvrCustLinkMan;
end;
procedure TFrmSelectCustLinkMan.FormShow(Sender: TObject);
var
sTableNames: string;
begin
SysFieldXml(CdsFieldProPerty,sFieldProPerty,'TFrmSelectCustLinkMain.Xml');
sTableNames := 'CustLinkmans';
if cdsFieldProperty.Active then
SetFieldProperty(CdsFieldProPerty,cdsSelectCustLinkMan,sTableNames);
end;
procedure TFrmSelectCustLinkMan.RzBitBtn1Click(Sender: TObject);
begin
Close;
end;
procedure TFrmSelectCustLinkMan.dbgSelectCustLinkManDblClick(Sender: TObject);
begin
if not CdsSelectCustLinkMan.IsEmpty then
RzBitBtn2Click(Nil);
end;
procedure TFrmSelectCustLinkMan.RzBitBtn2Click(Sender: TObject);
begin
If dbgSelectCustLinkMan.SelectedRows.Count<0 Then Begin
Application.MessageBox('请先选择客户联系人!', '警告', MB_ICONINFORMATION);
Exit;
end;
ModalResult := mrOK;
end;
procedure TFrmSelectCustLinkMan.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TFrmSelectCustLinkMan.CdsSelectCustLinkManBeforeGetRecords(Sender: TObject;
var OwnerData: OleVariant);
var val: Variant;
begin
val := OwnerData;
OwnerData := VarArrayCreate([0,1], varVariant);
OwnerData[0] := val;
OwnerData[1] := sSendCustNo;
end;
procedure TFrmSelectCustLinkMan.edValueChange(Sender: TObject);
const
MatchFields: array[0..2] of string=('LinkMan','Sex','Duty');
var
i: integer;
begin
i := 0;
try
while (i<3)and(not CdsSelectCustLinkMan.Locate(MatchFields[i],edValue.Text,[loPartialKey,loCaseInsensitive])) do
inc(i);
except
end;
end;
procedure TFrmSelectCustLinkMan.edValueKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key=VK_UP)or(Key=VK_DOWN) then
PostMessage(dbgSelectCustLinkMan.Handle,WM_KEYDOWN,Key,0);
end;
End.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?