1255 lines
33 KiB
ObjectPascal
1255 lines
33 KiB
ObjectPascal
unit U_ExpenseList;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB,
|
||
cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls,
|
||
cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient,
|
||
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls,
|
||
cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid,
|
||
cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common,
|
||
RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection,
|
||
IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit,
|
||
cxTextEdit, cxPC, cxDropDownEdit, cxLookAndFeels, cxLookAndFeelPainters,
|
||
cxNavigator, dxBarBuiltInMenu, dxDateRanges, U_BaseList, Vcl.Menus,
|
||
Vcl.Clipbrd, cxContainer, dxCore, cxDateUtils, dxSkinsCore,
|
||
dxSkinsDefaultPainters, dxScrollbarAnnotations, cxProgressBar;
|
||
|
||
type
|
||
TfrmExpenseList = class(TfrmBaseList)
|
||
ToolBar1: TToolBar;
|
||
TBRafresh: TToolButton;
|
||
btnDel: TToolButton;
|
||
TBClose: TToolButton;
|
||
ADOQueryTemp: TADOQuery;
|
||
ADOQueryCmd: TADOQuery;
|
||
Panel1: TPanel;
|
||
ADOQueryMain: TADOQuery;
|
||
RM1: TRMGridReport;
|
||
RMDB_Main: TRMDBDataSet;
|
||
Label3: TLabel;
|
||
OppCoName: TcxTextEdit;
|
||
cxGrid1: TcxGrid;
|
||
Tv1: TcxGridDBTableView;
|
||
Tv1FFTime: TcxGridDBColumn;
|
||
cxGridLevel1: TcxGridLevel;
|
||
GPM_1: TcxGridPopupMenu;
|
||
DS_1: TDataSource;
|
||
CDS_1: TClientDataSet;
|
||
btnAdd: TToolButton;
|
||
v2FactoryName: TcxGridDBColumn;
|
||
F_Name: TcxTextEdit;
|
||
Label4: TLabel;
|
||
Label6: TLabel;
|
||
P_Code: TcxTextEdit;
|
||
Tv1OppBankName: TcxGridDBColumn;
|
||
cxTabControl1: TcxTabControl;
|
||
Label10: TLabel;
|
||
ConNo: TcxTextEdit;
|
||
Label11: TLabel;
|
||
BuyConNo: TcxTextEdit;
|
||
btnChk: TToolButton;
|
||
btnReChk: TToolButton;
|
||
PM_1: TPopupMenu;
|
||
N1: TMenuItem;
|
||
ToolButton4: TToolButton;
|
||
Label2: TLabel;
|
||
OppParentCoName: TcxTextEdit;
|
||
ToolButton5: TToolButton;
|
||
N2: TMenuItem;
|
||
btnEdit: TToolButton;
|
||
Tv1OppBankCardNo: TcxGridDBColumn;
|
||
Tv1OurBankName: TcxGridDBColumn;
|
||
Tv1OurBankCardNo: TcxGridDBColumn;
|
||
Tv1Amount: TcxGridDBColumn;
|
||
Tv1Currency: TcxGridDBColumn;
|
||
Tv1ReimburseType: TcxGridDBColumn;
|
||
Tv1Column20: TcxGridDBColumn;
|
||
Tv1Status: TcxGridDBColumn;
|
||
Tv1Column22: TcxGridDBColumn;
|
||
Tv1PayStatus: TcxGridDBColumn;
|
||
ToolButton9: TToolButton;
|
||
N3: TMenuItem;
|
||
Tv1PayTime: TcxGridDBColumn;
|
||
Label1: TLabel;
|
||
begdate: TcxDateEdit;
|
||
Enddate: TcxDateEdit;
|
||
CheckBox1: TcxCheckBox;
|
||
Tv1TaxNumber: TcxGridDBColumn;
|
||
Tv1PrintStatus: TcxGridDBColumn;
|
||
TbnPay: TToolButton;
|
||
TbnRePay: TToolButton;
|
||
TbPrint: TToolButton;
|
||
Tv1FFID: TcxGridDBColumn;
|
||
Tv1Filler: TcxGridDBColumn;
|
||
Tv1FJFlag: TcxGridDBColumn;
|
||
Tv1PayMent: TcxGridDBColumn;
|
||
Tv1BankSlipNumber: TcxGridDBColumn;
|
||
Tv1Use: TcxGridDBColumn;
|
||
btnChk2: TToolButton;
|
||
btnReChk2: TToolButton;
|
||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||
procedure TBCloseClick(Sender: TObject);
|
||
procedure btnDelClick(Sender: TObject);
|
||
procedure FormShow(Sender: TObject);
|
||
procedure TBRafreshClick(Sender: TObject);
|
||
procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject);
|
||
procedure btnAddClick(Sender: TObject);
|
||
procedure OppCoNameKeyPress(Sender: TObject; var Key: Char);
|
||
procedure cxTabControl1Change(Sender: TObject);
|
||
procedure btnChkClick(Sender: TObject);
|
||
procedure btnReChkClick(Sender: TObject);
|
||
procedure ToolButton4Click(Sender: TObject);
|
||
procedure ToolButton5Click(Sender: TObject);
|
||
procedure N2Click(Sender: TObject);
|
||
procedure btnEditClick(Sender: TObject);
|
||
procedure ToolButton9Click(Sender: TObject);
|
||
procedure N1Click(Sender: TObject);
|
||
procedure N3Click(Sender: TObject);
|
||
procedure Tv1ReimburseTypePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
|
||
procedure TbnPayClick(Sender: TObject);
|
||
procedure TbnRePayClick(Sender: TObject);
|
||
procedure TbPrintClick(Sender: TObject);
|
||
procedure btnChk2Click(Sender: TObject);
|
||
procedure btnReChk2Click(Sender: TObject);
|
||
private
|
||
procedure InitGrid();
|
||
procedure SetStatus();
|
||
public
|
||
FAuthority: string;
|
||
end;
|
||
|
||
implementation
|
||
|
||
uses
|
||
U_DataLink, U_RTFun, U_ExpenseInput, U_ZDYHelp, U_AttachmentUpload,
|
||
U_LabelPrint;
|
||
|
||
{$R *.dfm}
|
||
procedure TfrmExpenseList.SetStatus();
|
||
begin
|
||
|
||
btnChk.Enabled := false; //<2F><><EFBFBD><EFBFBD>1
|
||
btnReChk.Enabled := false; //<2F><><EFBFBD><EFBFBD>1
|
||
btnChk2.Enabled := false; //<2F><><EFBFBD><EFBFBD>2
|
||
btnReChk2.Enabled := false; //<2F><><EFBFBD><EFBFBD>2
|
||
TbnPay.Enabled := false; //<2F><><EFBFBD><EFBFBD>
|
||
TbnRePay.Enabled := false; //<2F><><EFBFBD><EFBFBD>
|
||
|
||
btnAdd.Enabled := false; //<2F><><EFBFBD><EFBFBD>
|
||
btnEdit.Enabled := false; //<2F><EFBFBD>
|
||
btnDel.Enabled := false; //ɾ<><C9BE>
|
||
|
||
if Trim(FAuthority) = '<27><><EFBFBD><EFBFBD>' then
|
||
begin
|
||
btnAdd.Enabled := true;
|
||
case cxTabControl1.TabIndex of
|
||
0:
|
||
begin
|
||
btnEdit.Enabled := true;
|
||
btnDel.Enabled := true;
|
||
btnChk.Enabled := true;
|
||
end;
|
||
1:
|
||
begin
|
||
btnReChk.Enabled := true;
|
||
// btnChk2.Enabled := true; //<2F><><EFBFBD><EFBFBD>2
|
||
end;
|
||
2:
|
||
begin
|
||
// TbnPay.Enabled := true;
|
||
// btnReChk2.Enabled := true; //<2F><><EFBFBD><EFBFBD>2
|
||
end;
|
||
3:
|
||
begin
|
||
// TbnRePay.Enabled := true;
|
||
end;
|
||
end;
|
||
end;
|
||
|
||
if Trim(FAuthority) = '<27><><EFBFBD><EFBFBD>2' then
|
||
begin
|
||
btnAdd.Enabled := true;
|
||
case cxTabControl1.TabIndex of
|
||
0:
|
||
begin
|
||
btnEdit.Enabled := true;
|
||
btnDel.Enabled := true;
|
||
// btnChk.Enabled := true;
|
||
end;
|
||
1:
|
||
begin
|
||
// btnReChk.Enabled := true;
|
||
btnChk2.Enabled := true; //<2F><><EFBFBD><EFBFBD>2
|
||
end;
|
||
2:
|
||
begin
|
||
// TbnPay.Enabled := true;
|
||
btnReChk2.Enabled := true; //<2F><><EFBFBD><EFBFBD>2
|
||
end;
|
||
3:
|
||
begin
|
||
// TbnRePay.Enabled := true;
|
||
end;
|
||
end;
|
||
end;
|
||
|
||
if Trim(FAuthority) = '<27><><EFBFBD><EFBFBD>' then
|
||
begin
|
||
btnAdd.Enabled := true;
|
||
case cxTabControl1.TabIndex of
|
||
0:
|
||
begin
|
||
btnEdit.Enabled := true;
|
||
btnDel.Enabled := true;
|
||
// btnChk.Enabled := true;
|
||
end;
|
||
1:
|
||
begin
|
||
// btnReChk.Enabled := true;
|
||
// btnChk2.Enabled := true; //<2F><><EFBFBD><EFBFBD>2
|
||
end;
|
||
2:
|
||
begin
|
||
TbnPay.Enabled := true;
|
||
// btnReChk2.Enabled := true; //<2F><><EFBFBD><EFBFBD>2
|
||
end;
|
||
3:
|
||
begin
|
||
TbnRePay.Enabled := true;
|
||
end;
|
||
end;
|
||
end;
|
||
|
||
if Trim(FAuthority) = '<27><><EFBFBD><EFBFBD>' then
|
||
begin
|
||
btnAdd.Enabled := true;
|
||
case cxTabControl1.TabIndex of
|
||
0:
|
||
begin
|
||
btnEdit.Enabled := true;
|
||
btnDel.Enabled := true;
|
||
end;
|
||
1:
|
||
begin
|
||
|
||
end;
|
||
2:
|
||
begin
|
||
|
||
end;
|
||
end;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.InitGrid();
|
||
var
|
||
WSql: string;
|
||
begin
|
||
WSql := SGetFilters(Panel1, 1, 2);
|
||
if Trim(WSql) <> '' then
|
||
WSql := ' and ' + WSql
|
||
else
|
||
CheckBox1.Checked := True;
|
||
|
||
try
|
||
ADOQueryMain.DisableControls;
|
||
with ADOQueryMain do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
Filtered := False;
|
||
sql.Add(' select A.* ');
|
||
sql.Add(',FJFlag=CAST((CASE WHEN (SELECT COUNT(X.FileName) FROM FJ_File X where X.TFType=''<27><><EFBFBD>õǼ<C3B5>'' and X.WBID=A.FFID)>0 THEN 1 ELSE 0 END) AS BIT) ');
|
||
sql.Add(' from Finance_Flow A ');
|
||
sql.Add(' where A.FFType=''<27><><EFBFBD>õǼ<C3B5>'' ');
|
||
case cxTabControl1.TabIndex of
|
||
0:
|
||
begin
|
||
sql.Add(' and Checkstatus=''δ<><CEB4><EFBFBD><EFBFBD>'' ');
|
||
end;
|
||
1:
|
||
begin
|
||
sql.Add(' and Checkstatus=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1'' ');
|
||
end;
|
||
2:
|
||
begin
|
||
sql.add(' and Checkstatus=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2'' and PayStatus<>''<27>Ѹ<EFBFBD><D1B8><EFBFBD>'' ');
|
||
end;
|
||
3:
|
||
begin
|
||
sql.Add(' and PayStatus=''<27>Ѹ<EFBFBD><D1B8><EFBFBD>'' ');
|
||
end;
|
||
|
||
end;
|
||
if CheckBox1.Checked then
|
||
begin
|
||
sql.Add(' and A.FFTime>=''' + FormatDateTime('yyyy-MM-dd', begdate.Date) + ''' ');
|
||
sql.Add(' and A.FFTime<''' + FormatDateTime('yyyy-MM-dd', Enddate.Date + 1) + ''' ');
|
||
end;
|
||
sql.Add(WSql);
|
||
Open;
|
||
end;
|
||
SCreateCDS(ADOQueryMain, CDS_1);
|
||
SInitCDSData(ADOQueryMain, CDS_1);
|
||
finally
|
||
ADOQueryMain.EnableControls;
|
||
TV1.DataController.Filter.Clear;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.N1Click(Sender: TObject);
|
||
begin
|
||
SelOKNo(cds_1, True);
|
||
|
||
end;
|
||
|
||
procedure TfrmExpenseList.N2Click(Sender: TObject);
|
||
begin
|
||
Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString)));
|
||
end;
|
||
|
||
procedure TfrmExpenseList.N3Click(Sender: TObject);
|
||
begin
|
||
SelOKNo(cds_1, false);
|
||
|
||
end;
|
||
|
||
procedure TfrmExpenseList.FormClose(Sender: TObject; var Action: TCloseAction);
|
||
begin
|
||
inherited;
|
||
Action := caFree;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.TBCloseClick(Sender: TObject);
|
||
begin
|
||
|
||
Close;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.TbnPayClick(Sender: TObject);
|
||
var
|
||
FFFIDS: string;
|
||
SelectedDate: TDate;
|
||
DateForm: TForm;
|
||
cxDateEdit: TcxDateEdit;
|
||
cxTextEdit: TcxTextEdit;
|
||
btnOK, btnCancel: TButton;
|
||
lblDate, lblBankSlip: TLabel;
|
||
BankSlipCode: string;
|
||
begin
|
||
if CDS_1.IsEmpty then
|
||
exit;
|
||
|
||
if not CDS_1.Locate('SSel', True, []) then
|
||
begin
|
||
application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ');
|
||
Exit;
|
||
end;
|
||
|
||
// <20><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
DateForm := TForm.Create(nil);
|
||
try
|
||
DateForm.Caption := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ';
|
||
DateForm.Width := 350;
|
||
DateForm.Height := 200;
|
||
DateForm.Position := poScreenCenter;
|
||
DateForm.BorderStyle := bsDialog;
|
||
DateForm.BorderIcons := [biSystemMenu];
|
||
|
||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڱ<EFBFBD>ǩ
|
||
lblDate := TLabel.Create(DateForm);
|
||
lblDate.Parent := DateForm;
|
||
lblDate.Caption := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:';
|
||
lblDate.Left := 20;
|
||
lblDate.Top := 23;
|
||
|
||
// <20><><EFBFBD><EFBFBD> cxDateEdit
|
||
cxDateEdit := TcxDateEdit.Create(DateForm);
|
||
cxDateEdit.Parent := DateForm;
|
||
cxDateEdit.Properties.Kind := ckDate; // <20><><EFBFBD><EFBFBD> ckDate <20><><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>
|
||
cxDateEdit.Properties.DateButtons := [btnToday]; // <20><><EFBFBD>ӽ<EFBFBD><D3BD>찴ť
|
||
cxDateEdit.Properties.ShowTime := False; // <20><><EFBFBD><EFBFBD>ʾʱ<CABE>䲿<EFBFBD><E4B2BF>
|
||
cxDateEdit.Properties.SaveTime := False;
|
||
cxDateEdit.Properties.DateOnError := deToday; // <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
|
||
cxDateEdit.Date := Now; // Ĭ<>ϵ<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>
|
||
cxDateEdit.Left := 120;
|
||
cxDateEdit.Top := 18;
|
||
cxDateEdit.Width := 200;
|
||
|
||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǩ
|
||
lblBankSlip := TLabel.Create(DateForm);
|
||
lblBankSlip.Parent := DateForm;
|
||
lblBankSlip.Caption := '<27><><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:';
|
||
lblBankSlip.Left := 20;
|
||
lblBankSlip.Top := 63;
|
||
|
||
// <20><><EFBFBD><EFBFBD> cxTextEdit <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
cxTextEdit := TcxTextEdit.Create(DateForm);
|
||
cxTextEdit.Parent := DateForm;
|
||
cxTextEdit.Left := 120;
|
||
cxTextEdit.Top := 58;
|
||
cxTextEdit.Width := 200;
|
||
cxTextEdit.Text := '';
|
||
|
||
// <20><><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD>ť
|
||
btnOK := TButton.Create(DateForm);
|
||
btnOK.Parent := DateForm;
|
||
btnOK.Caption := 'ȷ<><C8B7>';
|
||
btnOK.ModalResult := mrOK;
|
||
btnOK.Left := 80;
|
||
btnOK.Top := 110;
|
||
btnOK.Width := 80;
|
||
btnOK.Default := True;
|
||
|
||
// <20><><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ť
|
||
btnCancel := TButton.Create(DateForm);
|
||
btnCancel.Parent := DateForm;
|
||
btnCancel.Caption := 'ȡ<><C8A1>';
|
||
btnCancel.ModalResult := mrCancel;
|
||
btnCancel.Left := 180;
|
||
btnCancel.Top := 110;
|
||
btnCancel.Width := 80;
|
||
btnCancel.Cancel := True;
|
||
|
||
// <20><>ʾ<EFBFBD>Ի<EFBFBD><D4BB><EFBFBD>
|
||
if DateForm.ShowModal = mrOK then
|
||
begin
|
||
// <20><>ȡѡ<C8A1><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
SelectedDate := Trunc(cxDateEdit.Date); // ȡ<><C8A1><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
|
||
BankSlipCode := Trim(cxTextEdit.Text);
|
||
|
||
// <20><>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>
|
||
if BankSlipCode = '' then
|
||
begin
|
||
if application.MessageBox('<27><><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD><D5A3>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', 'ȷ<><C8B7>', MB_YESNO + MB_ICONQUESTION) <> IDYES then
|
||
Exit;
|
||
end;
|
||
|
||
// <20><>ʾѡ<CABE><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ں<EFBFBD><DABA><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD>루<EFBFBD><EBA3A8><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>
|
||
// ShowMessage('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: ' + DateToStr(SelectedDate) + #13#10 + '<27><><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: ' + BankSlipCode);
|
||
|
||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>
|
||
if application.MessageBox(PChar('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: ' + DateToStr(SelectedDate) + #13#10 + '<27><><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: ' + BankSlipCode + #13#10 + 'ȷ<>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'), 'ȷ<>ϸ<EFBFBD><CFB8><EFBFBD>', MB_YESNO + MB_ICONQUESTION) = IDYES then
|
||
begin
|
||
// <20><>ȡѡ<C8A1>еļ<D0B5>¼
|
||
with CDS_1 do
|
||
begin
|
||
DisableControls;
|
||
First;
|
||
while not EOF do
|
||
begin
|
||
if FieldByName('SSel').AsBoolean then
|
||
begin
|
||
FFFIDS := FFFIDS + Trim(FieldByName('FFID').AsString) + ',';
|
||
end;
|
||
Next;
|
||
end;
|
||
EnableControls;
|
||
end;
|
||
|
||
// ɾ<><C9BE>ĩβ<C4A9>Ķ<EFBFBD><C4B6><EFBFBD>
|
||
if FFFIDS <> '' then
|
||
FFFIDS := Copy(FFFIDS, 1, Length(FFFIDS) - 1);
|
||
|
||
// <20><><EFBFBD><EFBFBD>ѡ<EFBFBD>еļ<D0B5>¼
|
||
with CDS_1 do
|
||
begin
|
||
DisableControls;
|
||
while CDS_1.Locate('SSel', True, []) do
|
||
begin
|
||
CDS_1.Delete;
|
||
end;
|
||
EnableControls;
|
||
end;
|
||
|
||
try
|
||
ADOQueryCmd.Connection.BeginTrans;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' exec P_Fin_Flow_SetStatus ');
|
||
sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
|
||
sql.Add(',@Operation=''<27><><EFBFBD><EFBFBD>'' ');
|
||
// <20><><EFBFBD>Ӹ<EFBFBD><D3B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
|
||
sql.Add(',@PayTime=' + QuotedStr(FormatDateTime('yyyy-mm-dd', SelectedDate)));
|
||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><>Ҫ<EFBFBD>Ĵ洢<C4B4><E6B4A2><EFBFBD><EFBFBD>
|
||
sql.Add(',@BankSlipNumber=' + QuotedStr(BankSlipCode));
|
||
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
|
||
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
|
||
open;
|
||
end;
|
||
|
||
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
|
||
raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
|
||
|
||
ADOQueryCmd.Connection.CommitTrans;
|
||
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>', '<27><>ʾ');
|
||
|
||
except
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
|
||
InitGrid();
|
||
end;
|
||
end;
|
||
end;
|
||
|
||
finally
|
||
DateForm.Free;
|
||
end;
|
||
end;
|
||
//var
|
||
// FFFIDS: string;
|
||
// SelectedDate: TDate;
|
||
// DateForm: TForm;
|
||
// MonthCalendar: TMonthCalendar;
|
||
// btnOK, btnCancel: TButton;
|
||
//begin
|
||
// if CDS_1.IsEmpty then
|
||
// exit;
|
||
//
|
||
// if not CDS_1.Locate('SSel', True, []) then
|
||
// begin
|
||
// application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ');
|
||
// Exit;
|
||
// end;
|
||
//
|
||
// // <20><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> MonthCalendar
|
||
// DateForm := TForm.Create(nil);
|
||
// try
|
||
// DateForm.Caption := 'ѡ<><EFBFBD><F1B8B6BF><EFBFBD><EFBFBD><EFBFBD>';
|
||
// DateForm.Width := 400;
|
||
// DateForm.Height := 400;
|
||
// DateForm.Position := poScreenCenter;
|
||
// DateForm.BorderStyle := bsDialog;
|
||
// DateForm.BorderIcons := [biSystemMenu];
|
||
//
|
||
// // <20><><EFBFBD><EFBFBD> MonthCalendar
|
||
// MonthCalendar := TMonthCalendar.Create(DateForm);
|
||
// MonthCalendar.Parent := DateForm;
|
||
// MonthCalendar.Left := 55;
|
||
// MonthCalendar.Top := 15;
|
||
// MonthCalendar.Width := 300; // <20><>ȷ<EFBFBD><C8B7><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD>
|
||
// MonthCalendar.Height := 300; // <20><>ȷ<EFBFBD><C8B7><EFBFBD>ø߶<C3B8>
|
||
// MonthCalendar.Date := Now;
|
||
//
|
||
// // <20><><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD>ť
|
||
// btnOK := TButton.Create(DateForm);
|
||
// btnOK.Parent := DateForm;
|
||
// btnOK.Caption := 'ȷ<><C8B7>';
|
||
// btnOK.ModalResult := mrOK;
|
||
// btnOK.Left := 120;
|
||
// btnOK.Top := MonthCalendar.Top + MonthCalendar.Height + 10;
|
||
// btnOK.Default := True;
|
||
//
|
||
// // <20><><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ť
|
||
// btnCancel := TButton.Create(DateForm);
|
||
// btnCancel.Parent := DateForm;
|
||
// btnCancel.Caption := 'ȡ<><C8A1>';
|
||
// btnCancel.ModalResult := mrCancel;
|
||
// btnCancel.Left := btnOK.Left + btnOK.Width + 20;
|
||
// btnCancel.Top := btnOK.Top;
|
||
// btnCancel.Cancel := True;
|
||
//
|
||
// // <20><>ʾ<EFBFBD>Ի<EFBFBD><D4BB><EFBFBD>
|
||
// if DateForm.ShowModal = mrOK then
|
||
// begin
|
||
// // <20><>ȡѡ<C8A1><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
// SelectedDate := MonthCalendar.Date;
|
||
//
|
||
// // <20><>ʾѡ<CABE><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>
|
||
// // ShowMessage('ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: ' + DateToStr(SelectedDate));
|
||
//
|
||
// // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>
|
||
// if application.MessageBox(PChar('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: ' + DateToStr(SelectedDate)), 'ȷ<><C8B7>', MB_YESNO + MB_ICONQUESTION) = IDYES then
|
||
// begin
|
||
// // <20><>ȡѡ<C8A1>еļ<D0B5>¼
|
||
// with CDS_1 do
|
||
// begin
|
||
// DisableControls;
|
||
// First;
|
||
// while not EOF do
|
||
// begin
|
||
// if FieldByName('SSel').AsBoolean then
|
||
// begin
|
||
// FFFIDS := FFFIDS + Trim(FieldByName('FFID').AsString) + ',';
|
||
// end;
|
||
// Next;
|
||
// end;
|
||
// EnableControls;
|
||
// end;
|
||
//
|
||
// // ɾ<><C9BE>ĩβ<C4A9>Ķ<EFBFBD><C4B6><EFBFBD>
|
||
// if FFFIDS <> '' then
|
||
// FFFIDS := Copy(FFFIDS, 1, Length(FFFIDS) - 1);
|
||
//
|
||
// // <20><><EFBFBD><EFBFBD>ѡ<EFBFBD>еļ<D0B5>¼
|
||
// with CDS_1 do
|
||
// begin
|
||
// DisableControls;
|
||
// while CDS_1.Locate('SSel', True, []) do
|
||
// begin
|
||
// CDS_1.Delete;
|
||
// end;
|
||
// EnableControls;
|
||
// end;
|
||
//
|
||
// try
|
||
// ADOQueryCmd.Connection.BeginTrans;
|
||
// with ADOQueryCmd do
|
||
// begin
|
||
// Close;
|
||
// sql.Clear;
|
||
// sql.Add(' exec P_Fin_Flow_SetStatus ');
|
||
// sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
|
||
// sql.Add(',@Operation=''<27><><EFBFBD><EFBFBD>'' ');
|
||
// // <20><><EFBFBD>Ӹ<EFBFBD><D3B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>
|
||
// sql.Add(',@PayTime=' + QuotedStr(FormatDateTime('yyyy-mm-dd', SelectedDate)));
|
||
// Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
|
||
// Sql.Add(',@DName=' + quotedstr(Trim(DName)));
|
||
// open;
|
||
// end;
|
||
//
|
||
// if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
|
||
// raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
|
||
//
|
||
// ADOQueryCmd.Connection.CommitTrans;
|
||
// application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>', '<27><>ʾ');
|
||
//
|
||
// except
|
||
// ADOQueryCmd.Connection.RollbackTrans;
|
||
// application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
|
||
// InitGrid();
|
||
// end;
|
||
// end;
|
||
// end;
|
||
//
|
||
// finally
|
||
// DateForm.Free;
|
||
// end;
|
||
//end;
|
||
|
||
procedure TfrmExpenseList.TbnRePayClick(Sender: TObject);
|
||
var
|
||
FFFIDS: string;
|
||
begin
|
||
if CDS_1.IsEmpty then
|
||
exit;
|
||
|
||
if not CDS_1.Locate('SSel', True, []) then
|
||
begin
|
||
application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ');
|
||
Exit;
|
||
end;
|
||
|
||
with CDS_1 do
|
||
begin
|
||
DisableControls;
|
||
while CDS_1.Locate('SSel', True, []) do
|
||
begin
|
||
FFFIDS := FFFIDS + Trim(CDS_1.fieldbyname('FFID').AsString) + ',';
|
||
CDS_1.Delete;
|
||
end;
|
||
EnableControls;
|
||
end;
|
||
|
||
try
|
||
ADOQueryCmd.Connection.BeginTrans;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' exec P_Fin_Flow_SetStatus ');
|
||
sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
|
||
sql.Add(',@Operation=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
|
||
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
|
||
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
|
||
open;
|
||
end;
|
||
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
|
||
raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
|
||
|
||
// with ADOQueryCmd do
|
||
// begin
|
||
// Close;
|
||
// sql.Clear;
|
||
// sql.Add(' exec P_Fin_In_Bank_Flow ');
|
||
// sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
|
||
// Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
|
||
// Sql.Add(',@DName=' + quotedstr(Trim(DName)));
|
||
// open;
|
||
// end;
|
||
// if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
|
||
// raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
|
||
ADOQueryCmd.Connection.CommitTrans;
|
||
|
||
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˳ɹ<CBB3>', '<27><>ʾ');
|
||
except
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
|
||
InitGrid();
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.TbPrintClick(Sender: TObject);
|
||
var
|
||
WSql, Wsql1: string;
|
||
begin
|
||
if CDS_1.IsEmpty then
|
||
Exit;
|
||
if not CDS_1.Locate('SSel', True, []) then
|
||
begin
|
||
Application.MessageBox('û<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
|
||
Exit;
|
||
end;
|
||
WSql := '';
|
||
Wsql1 := '';
|
||
CDS_1.DisableControls;
|
||
with CDS_1 do
|
||
begin
|
||
First;
|
||
while not Eof do
|
||
begin
|
||
if CDS_1.fieldbyname('SSel').AsBoolean then
|
||
begin
|
||
if WSql <> '' then
|
||
begin
|
||
WSql := WSql + ',' + Trim(CDS_1.fieldbyname('FFID').AsString);
|
||
end
|
||
else
|
||
begin
|
||
WSql := Trim(CDS_1.fieldbyname('FFID').AsString);
|
||
end;
|
||
|
||
if Wsql1 <> '' then
|
||
begin
|
||
Wsql1 := Wsql1 + ',' + QuotedStr(Trim(CDS_1.fieldbyname('FFID').AsString));
|
||
end
|
||
else
|
||
begin
|
||
Wsql1 := QuotedStr(Trim(CDS_1.fieldbyname('FFID').AsString));
|
||
end;
|
||
end;
|
||
Next;
|
||
end;
|
||
end;
|
||
CDS_1.Locate('SSel', True, []);
|
||
CDS_1.EnableControls;
|
||
try
|
||
frmLabelPrint := TfrmLabelPrint.Create(Application);
|
||
with frmLabelPrint do
|
||
begin
|
||
FLMType := 'ExpenseList';
|
||
// FFiltration1 := WSql1;
|
||
FFiltration1 := WSql;
|
||
// ShowMessage(FFiltration1);
|
||
if ShowModal = 1 then
|
||
begin
|
||
WSql := '''' + WSql + '''';
|
||
// ShowMessage('1111');
|
||
with Self.ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
|
||
sql.Add(' UPDATE F SET PrintStatus = ''<27>Ѵ<EFBFBD>ӡ'' FROM Finance_Flow F ');
|
||
SQL.Add(' WHERE EXISTS ( SELECT 1 FROM [dbo].[F_Tool_SplitString](' + WSql + ', '','') X WHERE X.RTValue = F.FFID )');
|
||
// showMessage(sql.Text);
|
||
execsql;
|
||
end;
|
||
end;
|
||
end;
|
||
finally
|
||
frmLabelPrint.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.btnDelClick(Sender: TObject);
|
||
var
|
||
FFFIDS: string;
|
||
begin
|
||
if CDS_1.IsEmpty then
|
||
exit;
|
||
|
||
if not CDS_1.Locate('SSel', True, []) then
|
||
begin
|
||
application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ');
|
||
Exit;
|
||
end;
|
||
|
||
with CDS_1 do
|
||
begin
|
||
DisableControls;
|
||
while CDS_1.Locate('SSel', True, []) do
|
||
begin
|
||
FFFIDS := FFFIDS + Trim(CDS_1.fieldbyname('FFID').AsString) + ',';
|
||
CDS_1.Delete;
|
||
end;
|
||
EnableControls;
|
||
end;
|
||
|
||
try
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' exec P_Fin_Flow_Del ');
|
||
sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
|
||
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
|
||
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
|
||
open;
|
||
end;
|
||
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
|
||
raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
|
||
application.MessageBox('<27><><EFBFBD>˳ɹ<CBB3>', '<27><>ʾ');
|
||
except
|
||
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
|
||
InitGrid();
|
||
end;
|
||
|
||
end;
|
||
|
||
procedure TfrmExpenseList.FormShow(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
ReadCxGrid(trim(Self.Caption), Tv1, '<27><><EFBFBD>ù<EFBFBD><C3B9><EFBFBD>');
|
||
Enddate.Date := SGetServerDate(ADOQueryTemp);
|
||
begdate.Date := Enddate.Date - 30;
|
||
FAuthority := self.fParameters1;
|
||
SetStatus();
|
||
InitGrid();
|
||
end;
|
||
|
||
procedure TfrmExpenseList.TBRafreshClick(Sender: TObject);
|
||
begin
|
||
begdate.SetFocus;
|
||
|
||
InitGrid();
|
||
|
||
end;
|
||
|
||
procedure TfrmExpenseList.cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject);
|
||
var
|
||
mvalue, FFieldName: string;
|
||
FPS, FQty, FPrice, FQTFee, FMoney, FZKMoney: Double;
|
||
begin
|
||
FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
|
||
mvalue := TcxTextEdit(Sender).EditingText;
|
||
if Trim(mvalue) = '' then
|
||
begin
|
||
mvalue := '0';
|
||
end;
|
||
|
||
with CDS_1 do
|
||
begin
|
||
Edit;
|
||
FieldByName(FFieldName).Value := Trim(mvalue);
|
||
Post;
|
||
FPS := CDS_1.fieldbyname('PS').AsFloat;
|
||
FQty := CDS_1.fieldbyname('Qty').AsFloat;
|
||
FQTFee := CDS_1.fieldbyname('QTFee').AsFloat;
|
||
FPrice := CDS_1.fieldbyname('Price').AsFloat;
|
||
FMoney := CDS_1.fieldbyname('Money').AsFloat;
|
||
|
||
FZKMoney := CDS_1.fieldbyname('ZKMoney').AsFloat;
|
||
end;
|
||
|
||
if Trim(FFieldName) <> 'Money' then
|
||
begin
|
||
FMoney := FQty * FPrice + FQTFee - FZKMoney;
|
||
end;
|
||
with CDS_1 do
|
||
begin
|
||
Edit;
|
||
FieldByName('Money').Value := FMoney;
|
||
Post;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
sql.Add('update Finance_Flow set ' + FFieldName + '=' + Trim(mvalue));
|
||
if Trim(FFieldName) <> 'Money' then
|
||
sql.Add(' ,Money=' + FloatToStr(FMoney));
|
||
sql.Add('where FFID=' + quotedstr(Trim(CDS_1.fieldbyname('FFID').AsString)));
|
||
ExecSQL;
|
||
end;
|
||
|
||
Tv1.Controller.EditingController.ShowEdit();
|
||
end;
|
||
|
||
procedure TfrmExpenseList.btnChkClick(Sender: TObject);
|
||
var
|
||
FFFIDS: string;
|
||
begin
|
||
if CDS_1.IsEmpty then
|
||
exit;
|
||
|
||
if not CDS_1.Locate('SSel', True, []) then
|
||
begin
|
||
application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ');
|
||
Exit;
|
||
end;
|
||
|
||
with CDS_1 do
|
||
begin
|
||
DisableControls;
|
||
while CDS_1.Locate('SSel', True, []) do
|
||
begin
|
||
FFFIDS := FFFIDS + Trim(CDS_1.fieldbyname('FFID').AsString) + ',';
|
||
CDS_1.Delete;
|
||
end;
|
||
EnableControls;
|
||
end;
|
||
|
||
try
|
||
ADOQueryCmd.Connection.BeginTrans;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' exec P_Fin_Flow_SetStatus ');
|
||
sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
|
||
sql.Add(',@Operation=''<27><><EFBFBD><EFBFBD>1'' ');
|
||
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
|
||
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
|
||
open;
|
||
end;
|
||
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
|
||
raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
|
||
|
||
// with ADOQueryCmd do
|
||
// begin
|
||
// Close;
|
||
// sql.Clear;
|
||
// sql.Add(' exec P_Fin_In_Bank_Flow ');
|
||
// sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
|
||
// Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
|
||
// Sql.Add(',@DName=' + quotedstr(Trim(DName)));
|
||
// open;
|
||
// end;
|
||
// if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
|
||
// raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
|
||
|
||
ADOQueryCmd.Connection.CommitTrans;
|
||
application.MessageBox('<27><><EFBFBD><EFBFBD>1<EFBFBD>ɹ<EFBFBD>', '<27><>ʾ');
|
||
except
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
|
||
InitGrid();
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.btnReChkClick(Sender: TObject);
|
||
var
|
||
FFFIDS: string;
|
||
begin
|
||
if CDS_1.IsEmpty then
|
||
exit;
|
||
|
||
if not CDS_1.Locate('SSel', True, []) then
|
||
begin
|
||
application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ');
|
||
Exit;
|
||
end;
|
||
|
||
with CDS_1 do
|
||
begin
|
||
DisableControls;
|
||
while CDS_1.Locate('SSel', True, []) do
|
||
begin
|
||
FFFIDS := FFFIDS + Trim(CDS_1.fieldbyname('FFID').AsString) + ',';
|
||
CDS_1.Delete;
|
||
end;
|
||
EnableControls;
|
||
end;
|
||
|
||
try
|
||
ADOQueryCmd.Connection.BeginTrans;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' exec P_Fin_Flow_SetStatus ');
|
||
sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
|
||
sql.Add(',@Operation=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1'' ');
|
||
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
|
||
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
|
||
open;
|
||
end;
|
||
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
|
||
raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
|
||
|
||
// with ADOQueryCmd do
|
||
// begin
|
||
// Close;
|
||
// sql.Clear;
|
||
// sql.Add(' exec P_Fin_In_Bank_Flow ');
|
||
// sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
|
||
// Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
|
||
// Sql.Add(',@DName=' + quotedstr(Trim(DName)));
|
||
// open;
|
||
// end;
|
||
// if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
|
||
// raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
|
||
ADOQueryCmd.Connection.CommitTrans;
|
||
|
||
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD>ɹ<EFBFBD>', '<27><>ʾ');
|
||
except
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
|
||
InitGrid();
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.btnAddClick(Sender: TObject);
|
||
begin
|
||
|
||
try
|
||
frmExpenseInput := TfrmExpenseInput.Create(Application);
|
||
with frmExpenseInput do
|
||
begin
|
||
FFFID := '';
|
||
if ShowModal = 1 then
|
||
begin
|
||
InitGrid();
|
||
end;
|
||
end;
|
||
finally
|
||
frmExpenseInput.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.btnChk2Click(Sender: TObject);
|
||
var
|
||
FFFIDS: string;
|
||
begin
|
||
if CDS_1.IsEmpty then
|
||
exit;
|
||
|
||
if not CDS_1.Locate('SSel', True, []) then
|
||
begin
|
||
application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ');
|
||
Exit;
|
||
end;
|
||
|
||
with CDS_1 do
|
||
begin
|
||
DisableControls;
|
||
while CDS_1.Locate('SSel', True, []) do
|
||
begin
|
||
FFFIDS := FFFIDS + Trim(CDS_1.fieldbyname('FFID').AsString) + ',';
|
||
CDS_1.Delete;
|
||
end;
|
||
EnableControls;
|
||
end;
|
||
|
||
try
|
||
ADOQueryCmd.Connection.BeginTrans;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' exec P_Fin_Flow_SetStatus ');
|
||
sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
|
||
sql.Add(',@Operation=''<27><><EFBFBD><EFBFBD>2'' ');
|
||
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
|
||
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
|
||
open;
|
||
end;
|
||
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
|
||
raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
|
||
|
||
// with ADOQueryCmd do
|
||
// begin
|
||
// Close;
|
||
// sql.Clear;
|
||
// sql.Add(' exec P_Fin_In_Bank_Flow ');
|
||
// sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
|
||
// Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
|
||
// Sql.Add(',@DName=' + quotedstr(Trim(DName)));
|
||
// open;
|
||
// end;
|
||
// if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
|
||
// raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
|
||
|
||
ADOQueryCmd.Connection.CommitTrans;
|
||
application.MessageBox('<27><><EFBFBD><EFBFBD>2<EFBFBD>ɹ<EFBFBD>', '<27><>ʾ');
|
||
except
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
|
||
InitGrid();
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.btnReChk2Click(Sender: TObject);
|
||
var
|
||
FFFIDS: string;
|
||
begin
|
||
if CDS_1.IsEmpty then
|
||
exit;
|
||
|
||
if not CDS_1.Locate('SSel', True, []) then
|
||
begin
|
||
application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ');
|
||
Exit;
|
||
end;
|
||
|
||
with CDS_1 do
|
||
begin
|
||
DisableControls;
|
||
while CDS_1.Locate('SSel', True, []) do
|
||
begin
|
||
FFFIDS := FFFIDS + Trim(CDS_1.fieldbyname('FFID').AsString) + ',';
|
||
CDS_1.Delete;
|
||
end;
|
||
EnableControls;
|
||
end;
|
||
|
||
try
|
||
ADOQueryCmd.Connection.BeginTrans;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' exec P_Fin_Flow_SetStatus ');
|
||
sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
|
||
sql.Add(',@Operation=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2'' ');
|
||
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
|
||
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
|
||
open;
|
||
end;
|
||
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
|
||
raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
|
||
|
||
// with ADOQueryCmd do
|
||
// begin
|
||
// Close;
|
||
// sql.Clear;
|
||
// sql.Add(' exec P_Fin_In_Bank_Flow ');
|
||
// sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
|
||
// Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
|
||
// Sql.Add(',@DName=' + quotedstr(Trim(DName)));
|
||
// open;
|
||
// end;
|
||
// if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
|
||
// raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
|
||
ADOQueryCmd.Connection.CommitTrans;
|
||
|
||
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2<EFBFBD>ɹ<EFBFBD>', '<27><>ʾ');
|
||
except
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
|
||
InitGrid();
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.ToolButton4Click(Sender: TObject);
|
||
begin
|
||
if ADOQueryMain.IsEmpty then
|
||
Exit;
|
||
TcxGridToExcel(self.Caption, cxgrid1);
|
||
end;
|
||
|
||
procedure TfrmExpenseList.ToolButton5Click(Sender: TObject);
|
||
begin
|
||
WriteCxGrid(trim(Self.Caption), Tv1, '<27><><EFBFBD>ù<EFBFBD><C3B9><EFBFBD>');
|
||
end;
|
||
|
||
procedure TfrmExpenseList.btnEditClick(Sender: TObject);
|
||
begin
|
||
try
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' exec P_Fin_Flow_Judge ');
|
||
sql.Add(' @FFIDS=' + QuotedStr(Trim(SELF.CDS_1.fieldbyname('FFID').AsString)));
|
||
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
|
||
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
|
||
open;
|
||
end;
|
||
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
|
||
raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
|
||
except
|
||
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
|
||
Exit;
|
||
end;
|
||
|
||
try
|
||
frmExpenseInput := TfrmExpenseInput.Create(Application);
|
||
with frmExpenseInput do
|
||
begin
|
||
FFFID := Trim(SELF.CDS_1.fieldbyname('FFID').AsString);
|
||
if ShowModal = 1 then
|
||
begin
|
||
InitGrid();
|
||
end;
|
||
end;
|
||
finally
|
||
frmExpenseInput.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.ToolButton9Click(Sender: TObject);
|
||
begin
|
||
if CDS_1.IsEmpty then
|
||
Exit;
|
||
try
|
||
frmAttachmentUpload := TfrmAttachmentUpload.Create(Application);
|
||
with frmAttachmentUpload do
|
||
begin
|
||
if Trim(Self.CDS_1.fieldbyname('filler').AsString) = dname then
|
||
FEditAuthority := True;
|
||
fkeyNO := Trim(Self.CDS_1.fieldbyname('FFID').AsString);
|
||
fType := '<27><><EFBFBD>õǼ<C3B5>';
|
||
if ShowModal = 1 then
|
||
begin
|
||
|
||
end;
|
||
end;
|
||
finally
|
||
frmAttachmentUpload.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.Tv1ReimburseTypePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
|
||
begin
|
||
try
|
||
frmZDYHelp := TfrmZDYHelp.Create(Application);
|
||
with frmZDYHelp do
|
||
begin
|
||
flag := 'ReimburseType';
|
||
flagname := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
||
if ShowModal = 1 then
|
||
begin
|
||
Self.CDS_1.Edit;
|
||
Self.CDS_1.FieldByName('ReimburseType').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
|
||
Self.CDS_1.Post;
|
||
end;
|
||
end;
|
||
finally
|
||
frmZDYHelp.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.OppCoNameKeyPress(Sender: TObject; var Key: Char);
|
||
begin
|
||
if Key = #13 then
|
||
begin
|
||
InitGrid();
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmExpenseList.cxTabControl1Change(Sender: TObject);
|
||
begin
|
||
SetStatus();
|
||
InitGrid();
|
||
end;
|
||
|
||
end.
|
||
|