📄 gl_enter_passcredence1.pas
字号:
unit Gl_Enter_PassCredence1;
Interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Base_Check_Body, Db, ActnList, AdODB, Grids, DBGridEh, StdCtrls,
ExtCtrls, ComCtrls, ToolWin, Mask, linkedit, jpeg;
Type
TFrm_Gl_Enter_PassCredence1 = Class(TFrm_Base_Check_Body)
AdoQry_BodyCredenceId: TIntegerField;
AdoQry_BodyGl_CredenceLineNo: TIntegerField;
AdoQry_BodyDocketName: TStringField;
AdoQry_BodyKMCode: TStringField;
AdoQry_BodyDebitAmount: TFloatField;
AdoQry_BodyCreditAmount: TFloatField;
AdoQry_BodyFCurrencyRate: TFloatField;
AdoQry_BodyFDebitAmount: TFloatField;
AdoQry_BodyFCreditAmount: TFloatField;
AdoQry_BodyAmount: TFloatField;
AdoQry_BodyPrice: TFloatField;
AdoQry_BodyDepArtCode: TStringField;
AdoQry_BodyPersonEmployeeCode: TStringField;
AdoQry_BodyCustomerCode: TStringField;
AdoQry_BodyVendorCode: TStringField;
AdoQry_BodyProjectCode: TStringField;
AdoQry_BodyBalanceTypeCode: TStringField;
AdoQry_BodyBillNo: TStringField;
AdoQry_BodykmName: TStringField;
Label15: TLabel;
edt_ChCode: TLinkEdit;
edt_ChName: TEdit;
Label3: TLabel;
MEdt_CreateDate: TMaskEdit;
Label9: TLabel;
Edt_Credenceno: TEdit;
Label1: TLabel;
edt_BillAmount: TEdit;
Label4: TLabel;
Edt_Totaldebit: TEdit;
Label16: TLabel;
edt_Totalcredit: TEdit;
Label5: TLabel;
edt_CreateEmployeeCode: TLinkEdit;
edt_CreateEmployeeName: TEdit;
Label10: TLabel;
edt_assessEmployeeName: TEdit;
edt_assessEmployeeCode: TLinkEdit;
edt_CashierEmployeeCode: TLinkEdit;
edt_CashierEmployeeName: TEdit;
Label7: TLabel;
edt_tallyEmployeeCode: TLinkEdit;
edt_tallyEmployeeName: TEdit;
Label6: TLabel;
procedure Act_CheckExecute(Sender: TObject);
procedure Act_CancelCheckExecute(Sender: TObject);
private
Credenceid:Integer;
{ Private declarations }
public
procedure InitForm(AdOConnection:TAdOConnection;FormStatus:String;
AdoQuery:TAdoQuery);Override;
{ Public declarations }
end;
var
Frm_Gl_Enter_PassCredence1: TFrm_Gl_Enter_PassCredence1;
implementation
uses Sys_Global;
{$R *.DFM}
{ TFrm_Gl_Enter_PassCredence }
procedure TFrm_Gl_Enter_PassCredence1.InitForm(
AdOConnection: TAdOConnection; FormStatus: String; AdoQuery: TAdoQuery);
var
SqlText:String;
begin
inherited;
With AdoQry_Head do
begin
Edt_ChCode.text :=fieldbyname('CharacterNo').asstring;
Executesql(AdoQry_tmp,'select * from Gl_CredenceType where CharacterNo='+quotedstr(Trim(edt_ChCode.text)),0);
edt_ChName.Text:=AdoQry_tmp.fieldbyname('CharacterCode').asstring;
medt_Createdate.Text:=fieldbyname('Credencedate').asstring;
edt_Credenceno.Text:=fieldbyname('Credenceno').asstring;
// cmb_CredenceType.ItemIndex:=fieldbyname('CredenceType').asinteger-1;
edt_Totaldebit.Text:=floattostr(fieldbyname('TotaldebitAmount').asfloat);
edt_Totalcredit.Text:=floattostr(fieldbyname('TotalcreditAmount').asfloat) ;
edt_CreateEmployeeCode.Text:=fieldbyname('createEmployeeCode').asstring;
Executesql(AdoQry_tmp,'select * from Employee where EmployeeCode='+quotedstr(Trim(edt_CreateEmployeeCode.text)),0);
edt_CreateEmployeeName.Text:=AdoQry_tmp.fieldbyname('EmployeeName').asstring;
edt_CashierEmployeeCode.Text:=fieldbyname('cashierEmployeeCode').asstring;
Executesql(AdoQry_tmp,'select * from Employee where EmployeeCode='+quotedstr(Trim(edt_CashierEmployeeCode.text)),0);
edt_CashierEmployeeName.Text:=AdoQry_tmp.fieldbyname('EmployeeName').asstring;
edt_tallyEmployeeCode.Text:=fieldbyname('tallyEmployeeCode').asstring;
Executesql(AdoQry_tmp,'select * from Employee where EmployeeCode='+quotedstr(Trim(edt_tallyEmployeeCode.text)),0);
edt_tallyEmployeeName.Text:=AdoQry_tmp.fieldbyname('EmployeeName').asstring;
edt_assessEmployeeCode.Text:=fieldbyname('assessorEmployeeCode').asstring;
Executesql(AdoQry_tmp,'select * from Employee where EmployeeCode='+quotedstr(Trim(edt_assessEmployeeCode.text)),0);
edt_assessEmployeeName.Text:=AdoQry_tmp.fieldbyname('EmployeeName').asstring;
edt_BillAmount.Text:=inttostr(fieldbyname('BillAmount').asinteger);
Credenceid:=fieldbyname('Credenceid').asinteger;
end;
Executesql(AdoQry_tmp,'select * from Gl_Credence where Credenceno='+quotedstr(AdoQry_Head.fieldbyname('Credenceno').asstring),0);
Credenceid:=AdoQry_tmp.fieldbyname('Credenceid').asinteger;
SqlText:='select t1.*,'
+' t2.kmName '
+' from Gl_Credenceline t1 '
+' left join Gl_AccountSubject t2 on t1.kmCode=t2.kmCode '
+' where Credenceid='+inttostr(Credenceid);
Executesql(AdoQry_Body,sqltext,0);
end;
procedure TFrm_Gl_Enter_PassCredence1.Act_CheckExecute(Sender: TObject);
var
SqlText:String;
begin
inherited;
If (AdoQry_Head.Eof) And (AdoQry_Head.Bof) Then
Exit;
If Trim(Edt_CashierEmployeeCode.Text) = '' then
If (DispInfo('确认真的要签字这张凭证吗?',2)='y') Then
begin
try
Dbconnect.beginTrans ;
saveCredenceHistory(dbconnect,Trim(edt_Credenceno.text),userCode,7);
SQlText:=' UpDate Gl_Credence Set SignFlag=1, '
+' CashierEmployeeCode='''+UserCode+''' Where CredenceId='''+IntToStr(CredenceId)+''' ';
AdoQry_Tmp.Close;
AdoQry_Tmp.sql.clear ;
AdoQry_Tmp.SQL.Text := SqlText;
AdoQry_Tmp.ExecSQL ;
Edt_CashierEmployeeCode.Text := userCode;
Executesql(AdoQry_tmp,'select EmployeeName from Employee where EmployeeCode='+quotedstr(userCode),0);
Edt_CashierEmployeeName.Text:=AdoQry_tmp.fieldbyname('EmployeeName').asstring;
AdoQry_Head.Edit;
AdoQry_Head.fieldbyname('SignFlag').AsInteger:=1;
AdoQry_Head.fieldbyname('CashierEmployeeCode').AsString:=UserCode;
AdoQry_Head.fieldbyname('CashierEmployeeName').AsString:=Edt_CashierEmployeeName.Text;
AdoQry_Head.Post;
AdoQry_Body.First ;
while not AdoQry_Body.Eof do
begin
saveCredenceLineHistory(dbconnect,Credenceid,AdoQry_Body.fieldbyname('Gl_Credencelineno').asinteger,userCode,7);
AdoQry_Body.Next;
end;
Dbconnect.CommitTrans;
DispInfo('签字'+Edt_Credenceno.Text+'号凭证成功!',3);
except
if dbconnect.InTransaction then
dbconnect.RollBackTrans;
end;
end;
end;
procedure TFrm_Gl_Enter_PassCredence1.Act_CancelCheckExecute(
Sender: TObject);
var
SqlText:String;
begin
inherited;
If (AdoQry_Head.Eof) And (AdoQry_Head.Bof) Then
Exit;
if (Trim(Edt_CashierEmployeeCode.Text) <> UserCode) And (Trim(Edt_CashierEmployeeCode.Text) <> '') then
begin
DispInfo('取消签字签字只能由签字人自己进行!',1);
Abort;
end;
If Trim(Edt_CashierEmployeeCode.Text) <> '' then
If (DispInfo('确认真的要取消签字这张凭证吗?',2)='y') Then
begin
try
Dbconnect.beginTrans ;
saveCredenceHistory(dbconnect,Trim(edt_Credenceno.text),userCode,8);
SQlText:=' UpDate Gl_Credence Set SignFlag=0, '
+' CashierEmployeeCode='''+''+''' Where CredenceId='''+IntToStr(CredenceId)+''' ';
AdoQry_Tmp.Close;
AdoQry_Tmp.sql.clear ;
AdoQry_Tmp.SQL.Text := SqlText;
AdoQry_Tmp.ExecSQL ;
Edt_CashierEmployeeCode.Text := '';
Edt_CashierEmployeeName.Text:='';
AdoQry_Head.Edit;
AdoQry_Head.fieldbyname('Signflag').AsInteger:=0;
AdoQry_Head.fieldbyname('CashierEmployeeCode').AsString:='';
AdoQry_Head.fieldbyname('CashierEmployeeName').AsString:='';
AdoQry_Head.Post;
AdoQry_Body.First ;
while not AdoQry_Body.Eof do
begin
saveCredenceLineHistory(dbconnect,Credenceid,AdoQry_Body.fieldbyname('Gl_Credencelineno').asinteger,userCode,8);
AdoQry_Body.Next;
end;
Dbconnect.CommitTrans;
DispInfo('取消签字'+Edt_Credenceno.Text+'号凭证成功!',3);
except
if dbconnect.InTransaction then
dbconnect.RollBackTrans;
end;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -