D7fhyuhan/员工管理(StaffManage.dll)/U_GXAdd.pas

174 lines
3.9 KiB
ObjectPascal
Raw Permalink Normal View History

2025-09-21 08:59:38 +08:00
unit U_GXAdd;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, ADODB, DBClient, cxGridLevel,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxControls, cxGridCustomView, cxGrid, ComCtrls, ToolWin,
cxGridCustomPopupMenu, cxGridPopupMenu, cxTextEdit, cxButtonEdit,
StdCtrls, ExtCtrls, cxCurrencyEdit, BtnEdit;
type
TfrmGXAdd = class(TForm)
ToolBar1: TToolBar;
ToolButton1: TToolButton;
TBClose: TToolButton;
ADOQueryMain: TADOQuery;
ADOQueryCmd: TADOQuery;
ADOQueryTemp: TADOQuery;
ScrollBox1: TScrollBox;
Label1: TLabel;
PSName: TEdit;
PSID: TEdit;
Label3: TLabel;
Label13: TLabel;
CDS_Sub: TClientDataSet;
Note: TMemo;
procedure FormShow(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure CYColorKeyPress(Sender: TObject; var Key: Char);
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
canshu1:string;
Fint:Integer;
procedure InitSubGrid();
function SaveData():Boolean;
{ Private declarations }
public
FCYID,FCYCode,FCPID,FCPNO,FCPName:String;
CopyInt:Integer;
{ Public declarations }
end;
var
frmGXAdd: TfrmGXAdd;
implementation
uses
U_DataLink,U_Fun,U_iniParam,U_ZDYHelp, U_ZdyAttachGYS,U_FileUp;
{$R *.dfm}
procedure TfrmGXAdd.InitSubGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
SQL.Clear;
SQL.Add('select * from JYOrder_Process where PSID='''+Trim(FCYID)+'''');
Open;
end;
SCSHDataNew(ADOQueryMain,ScrollBox1,2);
SCSHDataNew(ADOQueryMain,ScrollBox1,0);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmGXAdd.FormShow(Sender: TObject);
begin
// InitSubGrid();
end;
procedure TfrmGXAdd.TBCloseClick(Sender: TObject);
begin
Close;
end;
function TfrmGXAdd.SaveData():Boolean;
var
maxId,FCYNo:String;
begin
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from JYOrder_Process where PSID='''+Trim(FCYID)+'''');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('Filler').Value:=Trim(DName);
SSetsaveSqlNew(ADOQueryCmd,'JYOrder_Process',ScrollBox1,2);
Post;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select count(*) as AA from JYOrder_Process where PSName='''+Trim(PSName.Text)+'''');
Open;
if FieldByName('AA').AsInteger>1 then
begin
ADOQueryCmd.Connection.RollbackTrans;
Result:=False;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>','<27><>ʾ',0);
Exit;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
Result:=True;
except
Result:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
end;
end;
procedure TfrmGXAdd.ToolButton1Click(Sender: TObject);
begin
if PSName.Text='' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
if SaveData() then
begin
ModalResult:=1;
end;
end;
procedure TfrmGXAdd.CYColorKeyPress(Sender: TObject; var Key: Char);
var c: Integer;
begin
if key='.' then
begin
for c:=1 to length(TEdit(Sender).text) do
begin
if Tedit(Sender).text[c]='.' then key:=#0;
end;
end
else
if key=#13 then PerForm(WM_NEXTDLGCTL,0,0)
else
if key=#8 then key:=#8
else
if (key<'0') or (key>'9') then
key:=#0;
end;
procedure TfrmGXAdd.FormDestroy(Sender: TObject);
begin
frmGXAdd:=nil;
end;
procedure TfrmGXAdd.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
end.