📄 u_ipyhdj.pas
字号:
unit U_IPYHDJ;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DBCtrls, DBCtrlsEh, Mask, DB, ExtCtrls, Buttons,
DBTables, ComCtrls, Grids, DBGridEh;
type
TIPYHDJ = class(TForm)
DSIPYH: TDataSource;
DBNavigator1: TDBNavigator;
BitBtn1: TBitBtn;
QIPYHXX: TQuery;
QIPPub: TQuery;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
TabSheet3: TTabSheet;
Label1: TLabel;
Label3: TLabel;
Label4: TLabel;
Label6: TLabel;
Label7: TLabel;
Label14: TLabel;
Label10: TLabel;
Label16: TLabel;
Label2: TLabel;
DBEdit1: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit6: TDBEdit;
DBDateTimeEditEh1: TDBDateTimeEditEh;
DBMemo1: TDBMemo;
DBComboBox1: TDBComboBox;
DBComboBox2: TDBComboBox;
DBEdit2: TDBEdit;
Label11: TLabel;
Label8: TLabel;
DBDateTimeEditEh2: TDBDateTimeEditEh;
DBEdit5: TDBEdit;
QIPSBXX: TQuery;
UpdateSQL1: TUpdateSQL;
UpdateSQL2: TUpdateSQL;
DataSource1: TDataSource;
Label5: TLabel;
Label9: TLabel;
Label12: TLabel;
Label13: TLabel;
Label15: TLabel;
Label17: TLabel;
Label18: TLabel;
Label19: TLabel;
DBComboBox3: TDBComboBox;
DBEdit7: TDBEdit;
DBEdit8: TDBEdit;
DBEdit9: TDBEdit;
DBEdit10: TDBEdit;
DBEdit11: TDBEdit;
DBEdit12: TDBEdit;
DBEdit13: TDBEdit;
DBGridEh1: TDBGridEh;
QIPCLXX: TQuery;
UpdateSQL3: TUpdateSQL;
DataSource2: TDataSource;
Label20: TLabel;
DBComboBox4: TDBComboBox;
Memo1: TMemo;
BitBtn2: TBitBtn;
procedure FormShow(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure QIPYHXXNewRecord(DataSet: TDataSet);
procedure QIPYHXXBeforePost(DataSet: TDataSet);
procedure QIPYHXXAfterPost(DataSet: TDataSet);
procedure PageControl1Change(Sender: TObject);
procedure QIPSBXXNewRecord(DataSet: TDataSet);
procedure QIPCLXXBeforePost(DataSet: TDataSet);
procedure QIPYHXXBeforeEdit(DataSet: TDataSet);
procedure BitBtn2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
YHDM:String;
end;
var
IPYHDJ: TIPYHDJ;
implementation
Uses U_CSSZ, U_Pub, U_Main;
{$R *.dfm}
procedure TIPYHDJ.FormShow(Sender: TObject);
begin
QIPPub.Close;
QIPPub.SQL.Clear;
QIPPub.SQL.Add('Select 报装来源 From CATVIP.系统设置');
QIPPub.Open;
Memo1.Lines.Text:=QIPPub.FieldByName('报装来源').AsString;
DBComboBox2.Items.Assign(Memo1.Lines);
DBComboBox1.Items.Assign(CSSZ.DBMemo3.Lines);
DBComboBox3.Items.Assign(CSSZ.DBMemo15.Lines);
If YHDM<>'' Then
Begin
QIPYHXX.Close;
While QIPYHXX.SQL.Count>1 Do QIPYHXX.SQL.Delete(1);
QIPYHXX.SQL.Add('Where 用户代码='+QuotedStr(YHDM));
End;
QIPYHXX.Open;
QIPYHXX.First;
If QIPYHXX.Eof Then
If QIPYHXX.FieldByName('用户姓名').AsString='' Then
Begin
QIPYHXX.Edit;
If QIPYHXX.FieldByName('安装人员').AsString='' Then QIPYHXX.FieldByName('安装人员').AsString:=MCTIForm.Query1.FieldByName('维修员').AsString;
If QIPYHXX.FieldByName('用户姓名').AsString='' Then QIPYHXX.FieldByName('用户姓名').AsString:=MCTIForm.Query1.FieldByName('用户名').AsString;
If QIPYHXX.FieldByName('地址').AsString='' Then QIPYHXX.FieldByName('地址').AsString:=MCTIForm.Query1.FieldByName('地址').AsString;
If QIPYHXX.FieldByName('联系方式').AsString='' Then QIPYHXX.FieldByName('联系方式').AsString:=MCTIForm.Query1.FieldByName('联系方式').AsString;
If YHDM<>'' Then
If QIPYHXX.State=dsInsert Then
Begin
//???
QIPYHXX.Post;
QIPYHXX.Close;
QIPYHXX.Open;
End;
End;
end;
procedure TIPYHDJ.FormClose(Sender: TObject; var Action: TCloseAction);
begin
//If DSIPYH.DataSet.State=dsEdit Then DSIPYH.DataSet.Post;
If QIPYHXX.FieldByName('ID').AsInteger>0 Then
CSSZ.CalaIP(QIPYHXX.FieldByName('ID').AsInteger);
end;
procedure TIPYHDJ.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
If Key=VK_Return Then SelectNext(ActiveControl,True,True);
end;
procedure TIPYHDJ.QIPYHXXNewRecord(DataSet: TDataSet);
begin
DSIPYH.DataSet.FieldByName('用户代码').AsString:=YHDM;
DSIPYH.DataSet.FieldByName('办理日期').AsDateTime:=CSSZ.SysDateTime;
DSIPYH.DataSet.FieldByName('操作员').AsString:=CZYXM;
end;
procedure TIPYHDJ.QIPYHXXBeforePost(DataSet: TDataSet);
begin
//If QIPYHXX.FieldByName('用户状态').IsNull Then
QIPYHXX.FieldByName('用户状态').AsString:='正式开通';
If Not QIPYHXX.FieldByName('ID').IsNull Then Exit;
QIPPub.Close;
QIPPUb.SQL.Clear;
QIPPub.SQL.Add('Select Max(ID) MaxID From CATVIP.用户信息');
QIPPub.Open;
QIPYHXX.FieldByName('ID').AsInteger:=QIPPub.FieldByName('MaxID').AsInteger+1;
QIPPub.Close;
end;
procedure TIPYHDJ.QIPYHXXAfterPost(DataSet: TDataSet);
begin
TQuery(DataSet).ApplyUpdates;
TQuery(DataSet).CommitUpdates;
end;
//改变 显示内容
procedure TIPYHDJ.PageControl1Change(Sender: TObject);
Var I:Integer;
begin
If PageControl1.ActivePageIndex=1 Then
Begin
QIPSBXX.Close;
If Not QIPYHXX.Active Then Exit;
If QIPYHXX.FieldByName('ID').IsNull Then Exit;
While QIPSBXX.SQL.Count>1 Do QIPSBXX.SQL.Delete(1);
QIPSBXX.SQL.Add('Where ID='+QIPYHXX.FieldByName('ID').AsString);
QIPSBXX.Open;
DBNavigator1.DataSource:=DataSource1;
DBNavigator1.VisibleButtons:=[nbPost,nbCancel];
End
Else If PageControl1.ActivePageIndex=2 Then
Begin
QIPCLXX.Close;
If Not QIPYHXX.Active Then Exit;
If QIPYHXX.FieldByName('ID').IsNull Then Exit;
While QIPCLXX.SQL.Count>1 Do QIPCLXX.SQL.Delete(1);
QIPCLXX.SQL.Add('Where ID='+QIPYHXX.FieldByName('ID').AsString);
QIPCLXX.Open;
//尚无记录
If QIPCLXX.FieldByName('ID').IsNull Then
For I:=0 To CSSZ.DBMemo16.Lines.Count-1 Do
Begin
QIPCLXX.Append;
QIPCLXX.FieldByName('ID').AsInteger:=QIPYHXX.FieldByName('ID').AsInteger;
QIPCLXX.FieldByName('SN').AsInteger:=I+1;
QIPCLXX.FieldByName('项目').AsString:=CSSZ.DBMemo16.Lines[I];
QIPCLXX.Post;
End;
DBNavigator1.DataSource:=DataSource2;
DBNavigator1.VisibleButtons:=[nbInsert,nbDelete,nbPost,nbCancel];
End
Else
Begin
DBNavigator1.DataSource:=DSIPYH;
DBNavigator1.VisibleButtons:=[nbPost,nbCancel];
End;
end;
procedure TIPYHDJ.QIPSBXXNewRecord(DataSet: TDataSet);
begin
QIPSBXX.FieldByName('ID').AsInteger:=QIPYHXX.FieldByName('ID').AsInteger;
end;
procedure TIPYHDJ.QIPCLXXBeforePost(DataSet: TDataSet);
begin
If Not QIPCLXX.FieldByName('ID').IsNull Then Exit;
QIPPub.SQL.Clear;
QIPPub.SQL.Add('Select Max(SN) MaxSN From CATVIP.材料信息 Where ID='+QIPYHXX.FieldByName('ID').AsString);
QIPPub.Open;
QIPCLXX.FieldByName('ID').AsInteger:=QIPYHXX.FieldByName('ID').AsInteger;
QIPCLXX.FieldByName('SN').AsInteger:=QIPPub.FieldByName('MaxSN').AsInteger+1;
QIPPub.Close;
end;
procedure TIPYHDJ.QIPYHXXBeforeEdit(DataSet: TDataSet);
begin
If Not QIPYHXX.FieldByName('计费日期').IsNull Then Abort;
end;
procedure TIPYHDJ.BitBtn2Click(Sender: TObject);
begin
If Not(QIPYHXX.State In [dsInsert,dsEdit]) Then QIPYHXX.Edit;
If QIPYHXX.FieldByName('安装人员').AsString='' Then QIPYHXX.FieldByName('安装人员').AsString:=MCTIForm.Query1.FieldByName('维修员').AsString;
If QIPYHXX.FieldByName('用户姓名').AsString='' Then QIPYHXX.FieldByName('用户姓名').AsString:=MCTIForm.Query1.FieldByName('用户名').AsString;
If QIPYHXX.FieldByName('地址').AsString='' Then QIPYHXX.FieldByName('地址').AsString:=MCTIForm.Query1.FieldByName('地址').AsString;
If QIPYHXX.FieldByName('联系方式').AsString='' Then QIPYHXX.FieldByName('联系方式').AsString:=MCTIForm.Query1.FieldByName('联系方式').AsString;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -