📄 u_setprogram.pas
字号:
unit U_setprogram;
interface
uses
{
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, U_child12, ADODB, DBTables, DB, DBClient, Provider, dbcgrids,
StdCtrls, Mask, DBCtrls, Grids, DBGridEh, ExtCtrls, ComCtrls,
fuct_server;
}
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, U_Child, DB, DBClient, Provider, ADODB, DosMove, Grids, DBGrids,
StdCtrls, Buttons, ExtCtrls, DBCtrls, Mask, dbcgrids, DBTables,fuct_server,
DBGridEh, U_child12;
type
TF_setprogram = class(TF_child1_2)
StaticText1: TStaticText;
StaticText3: TStaticText;
StaticText4: TStaticText;
DBEdit3: TDBEdit;
StaticText5: TStaticText;
StaticText6: TStaticText;
StaticText7: TStaticText;
StaticText8: TStaticText;
StaticText9: TStaticText;
StaticText10: TStaticText;
StaticText11: TStaticText;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
DBEdit8: TDBEdit;
DBEdit9: TDBEdit;
DBEdit10: TDBEdit;
DBEdit11: TDBEdit;
DBEdit12: TDBEdit;
seek: TADODataSet;
ClientDataSet2program_no: TStringField;
ClientDataSet2program_nm: TStringField;
ClientDataSet2ADD1: TStringField;
ClientDataSet2EDIT1: TStringField;
ClientDataSet2DELETE1: TStringField;
ClientDataSet2QUERY1: TStringField;
ClientDataSet2GETDATA1: TStringField;
ClientDataSet2PRINT1: TStringField;
ClientDataSet2DATAIN1: TStringField;
ClientDataSet2DATAOUT1: TStringField;
ClientDataSet2USER_NO: TStringField;
ClientDataSet2p_add: TStringField;
ClientDataSet2p_edit: TStringField;
ClientDataSet2p_delete: TStringField;
ClientDataSet2p_query: TStringField;
ClientDataSet2p_getdata: TStringField;
ClientDataSet2p_print: TStringField;
ClientDataSet2p_datain: TStringField;
ClientDataSet2p_dataout: TStringField;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure DBEdit1Enter(Sender: TObject);
procedure DBEdit2Enter(Sender: TObject);
procedure ClientDataSet1AfterScroll(DataSet: TDataSet);
procedure ClientDataSet2AfterScroll(DataSet: TDataSet);
procedure FormCreate(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure DataSetProvider2BeforeUpdateRecord(Sender: TObject;
SourceDS: TDataSet; DeltaDS: TCustomClientDataSet;
UpdateKind: TUpdateKind; var Applied: Boolean);
procedure DataSetProvider1BeforeUpdateRecord(Sender: TObject;
SourceDS: TDataSet; DeltaDS: TCustomClientDataSet;
UpdateKind: TUpdateKind; var Applied: Boolean);
procedure DBEdit4Click(Sender: TObject);
procedure DBEdit5Click(Sender: TObject);
procedure DBEdit6Click(Sender: TObject);
procedure DBEdit7Click(Sender: TObject);
procedure DBEdit8Click(Sender: TObject);
procedure DBEdit9Click(Sender: TObject);
procedure DBEdit10Click(Sender: TObject);
procedure DBEdit11Click(Sender: TObject);
procedure DBEdit4Exit(Sender: TObject);
procedure DBEdit5Exit(Sender: TObject);
procedure DBEdit6Exit(Sender: TObject);
procedure DBEdit7Exit(Sender: TObject);
procedure DBEdit8Exit(Sender: TObject);
procedure DBEdit9Exit(Sender: TObject);
procedure DBEdit10Exit(Sender: TObject);
procedure DBEdit11Exit(Sender: TObject);
procedure DBEdit4Enter(Sender: TObject);
procedure DBEdit5Enter(Sender: TObject);
procedure DBEdit6Enter(Sender: TObject);
procedure DBEdit7Enter(Sender: TObject);
procedure DBEdit8Enter(Sender: TObject);
procedure DBEdit9Enter(Sender: TObject);
procedure DBEdit10Enter(Sender: TObject);
procedure DBEdit11Enter(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure DoSave;override;
procedure DoCancel;override;
end;
var
F_setprogram: TF_setprogram;
implementation
uses MAIN;
{$R *.dfm}
procedure TF_setprogram.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
F_setprogram:=nil;
end;
procedure TF_setprogram.DBEdit1Enter(Sender: TObject);
begin
inherited;
DBCtrlGrid1.SetFocus;
end;
procedure TF_setprogram.DBEdit2Enter(Sender: TObject);
begin
inherited;
DBCtrlGrid1.SetFocus;
end;
procedure TF_setprogram.ClientDataSet1AfterScroll(DataSet: TDataSet);
begin
inherited;
//SHOWMESSAGE(ClientDataSet1.fieldbyname('user_no').AsString);
ClientDataSet2.Active:=false;
ClientDataSet2.Params.ParamByName('USER_NO').Value:=ClientDataSet1.fieldbyname('user_no').AsString;
ClientDataSet2.Active:=true;
ClientDataSet2.Edit;
end;
procedure TF_setprogram.ClientDataSet2AfterScroll(DataSet: TDataSet);
begin
inherited;
dbedit4.Enabled:=false;
dbedit5.Enabled:=false;
dbedit6.Enabled:=false;
dbedit7.Enabled:=false;
dbedit8.Enabled:=false;
dbedit9.Enabled:=false;
dbedit10.Enabled:=false;
dbedit11.Enabled:=false;
if ClientDataSet2.FieldByName('add1').AsString='Y' then dbedit4.Enabled:=true;
if ClientDataSet2.FieldByName('edit1').AsString='Y' then dbedit5.Enabled:=true;
if ClientDataSet2.FieldByName('delete1').AsString='Y' then dbedit6.Enabled:=true;
if ClientDataSet2.FieldByName('query1').AsString='Y' then dbedit7.Enabled:=true;
if ClientDataSet2.FieldByName('print1').AsString='Y' then dbedit8.Enabled:=true;
if ClientDataSet2.FieldByName('getdata1').AsString='Y' then dbedit9.Enabled:=true;
if ClientDataSet2.FieldByName('datain1').AsString='Y' then dbedit10.Enabled:=true;
if ClientDataSet2.FieldByName('dataout1').AsString='Y' then dbedit11.Enabled:=true;
end;
procedure TF_setprogram.FormCreate(Sender: TObject);
begin
//inherited;
mainform.b_add.Enabled:=false;
mainform.B_edit.Enabled:=false;
mainform.B_delete.Enabled:=false;
mainform.B_query.Enabled:=false;
mainform.B_getdata.Enabled:=false;
mainform.B_datain.Enabled:=false;
mainform.B_dataout.Enabled:=false;
mainform.B_update.Enabled:=true;
mainform.B_cancel.Enabled:=true;
end;
procedure TF_setprogram.DoCancel;
begin
//inherited;
self.ClientDataSet2.CancelUpdates;
end;
procedure TF_setprogram.DoSave;
var error:integer;
vdata:OleVariant;
begin
//inherited;
// self.ScrollBox3.Enabled:=false;
// self.ScrollBox2.Enabled:=true;
// dbedit1.Enabled:=true;
error:=0;
try
if not MainForm.ADOConnection1.Connected then MainForm.ADOConnection1.Connected:=true;
MainForm.ADOConnection1.BeginTrans;
ClientDataSet2.CheckBrowseMode;
if ClientDataSet2.ChangeCount>0 then
vdata:=ClientDataSet2.Delta
else vdata:=null;
if vartype(vdata)<>varnull then DataSetProvider2.ApplyUpdates(vdata,0,error);
ClientDataSet2.MergeChangeLog;
MainForm.ADOConnection1.CommitTrans;
except
MainForm.ADOConnection1.RollbackTrans;
MessageDlg('资料更新失败', mtInformation,[mbOk], 0);
self.ClientDataSet2.CancelUpdates;
end;
{
//set_btn(true);
case mlog of
1:mainform.B_Add.SetFocus ;
2:mainform.B_edit.SetFocus ;
3:mainform.B_delete.SetFocus ;
end;
mlog:=0;
}
mainform.DBNavigator1.Enabled:=true;
end;
procedure TF_setprogram.FormActivate(Sender: TObject);
begin
//inherited;
self.Top:=0;
if mainform.vuser_no<>'administrator' then
begin
showmessage('对不起你不是超级用户,不得进入该画面!');
self.Close;
end;
end;
procedure TF_setprogram.DataSetProvider2BeforeUpdateRecord(Sender: TObject;
SourceDS: TDataSet; DeltaDS: TCustomClientDataSet;
UpdateKind: TUpdateKind; var Applied: Boolean);
var
vsql:string;
begin
SEEK.Active:=FALSE;
SEEK.Parameters.ParamByName('USER_NO').Value:=dbedit1.text;
SEEK.Parameters.ParamByName('PROGRAM_NO').Value:=SELF.ClientDataSet2.FIELDBYNAME('PROGRAM_NO').AsString;
SEEK.Active:=TRUE;
IF SEEK.Eof THEN
vsql:=self.UpdateSQL2.InsertSQL.Text
ELSE vsql:=UpdateSQL2.ModifySQL.Text;
self.ADOCommand2.CommandText:=vsql;
AdoSetParams(ADOCommand2,deltaDS);
IF SEEK.Eof THEN ADOCommand2.Parameters.ParamByName('USER_NO').Value:=DBEDIT1.Text;
ADOCommand2.Prepared;
ADOCommand2.Execute;
applied:=true;
end;
procedure TF_setprogram.DataSetProvider1BeforeUpdateRecord(Sender: TObject;
SourceDS: TDataSet; DeltaDS: TCustomClientDataSet;
UpdateKind: TUpdateKind; var Applied: Boolean);
begin
// inherited;
end;
procedure TF_setprogram.DBEdit4Click(Sender: TObject);
begin
inherited;
if dbedit4.Text='Y' then dbedit4.Text:='N'
else dbedit4.Text:='Y';
end;
procedure TF_setprogram.DBEdit5Click(Sender: TObject);
begin
inherited;
if dbedit5.Text='Y' then dbedit5.Text:='N'
else dbedit5.Text:='Y';
end;
procedure TF_setprogram.DBEdit6Click(Sender: TObject);
begin
inherited;
if dbedit6.Text='Y' then dbedit6.Text:='N'
else dbedit6.Text:='Y';
end;
procedure TF_setprogram.DBEdit7Click(Sender: TObject);
begin
inherited;
if dbedit7.Text='Y' then dbedit7.Text:='N'
else dbedit7.Text:='Y';
end;
procedure TF_setprogram.DBEdit8Click(Sender: TObject);
begin
inherited;
if dbedit8.Text='Y' then dbedit8.Text:='N'
else dbedit8.Text:='Y';
end;
procedure TF_setprogram.DBEdit9Click(Sender: TObject);
begin
inherited;
if dbedit9.Text='Y' then dbedit9.Text:='N'
else dbedit9.Text:='Y';
end;
procedure TF_setprogram.DBEdit10Click(Sender: TObject);
begin
inherited;
if dbedit10.Text='Y' then dbedit10.Text:='N'
else dbedit10.Text:='Y';
end;
procedure TF_setprogram.DBEdit11Click(Sender: TObject);
begin
inherited;
if dbedit11.Text='Y' then dbedit11.Text:='N'
else dbedit11.Text:='Y';
end;
procedure TF_setprogram.DBEdit4Exit(Sender: TObject);
begin
inherited;
if pos(dbedit4.Text,'YN')=0 then dbedit4.Text:='N'
end;
procedure TF_setprogram.DBEdit5Exit(Sender: TObject);
begin
inherited;
if pos(dbedit5.Text,'YN')=0 then dbedit5.Text:='N'
end;
procedure TF_setprogram.DBEdit6Exit(Sender: TObject);
begin
inherited;
if pos(dbedit6.Text,'YN')=0 then dbedit6.Text:='N'
end;
procedure TF_setprogram.DBEdit7Exit(Sender: TObject);
begin
inherited;
if pos(dbedit7.Text,'YN')=0 then dbedit7.Text:='N'
end;
procedure TF_setprogram.DBEdit8Exit(Sender: TObject);
begin
inherited;
if pos(dbedit8.Text,'YN')=0 then dbedit8.Text:='N'
end;
procedure TF_setprogram.DBEdit9Exit(Sender: TObject);
begin
inherited;
if pos(dbedit9.Text,'YN')=0 then dbedit9.Text:='N'
end;
procedure TF_setprogram.DBEdit10Exit(Sender: TObject);
begin
inherited;
if pos(dbedit10.Text,'YN')=0 then dbedit11.Text:='N'
end;
procedure TF_setprogram.DBEdit11Exit(Sender: TObject);
begin
inherited;
if pos(dbedit11.Text,'YN')=0 then dbedit11.Text:='N'
end;
procedure TF_setprogram.DBEdit4Enter(Sender: TObject);
begin
inherited;
ClientDataSet2.Edit;
end;
procedure TF_setprogram.DBEdit5Enter(Sender: TObject);
begin
inherited;
ClientDataSet2.Edit;
end;
procedure TF_setprogram.DBEdit6Enter(Sender: TObject);
begin
inherited;
ClientDataSet2.Edit;
end;
procedure TF_setprogram.DBEdit7Enter(Sender: TObject);
begin
inherited;
ClientDataSet2.Edit;
end;
procedure TF_setprogram.DBEdit8Enter(Sender: TObject);
begin
inherited;
ClientDataSet2.Edit;
end;
procedure TF_setprogram.DBEdit9Enter(Sender: TObject);
begin
inherited;
ClientDataSet2.Edit;
end;
procedure TF_setprogram.DBEdit10Enter(Sender: TObject);
begin
inherited;
ClientDataSet2.Edit;
end;
procedure TF_setprogram.DBEdit11Enter(Sender: TObject);
begin
inherited;
ClientDataSet2.Edit;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -