D10myBiaoqi/A09财务通用管理/U_PayList.pas

956 lines
25 KiB
ObjectPascal
Raw Normal View History

2024-07-04 16:01:24 +08:00
unit U_PayList;
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, dxSkinsCore, dxSkinsDefaultPainters,
2024-07-13 11:03:15 +08:00
dxDateRanges, U_BaseList, Vcl.Menus, Vcl.Clipbrd, dxSkinWXI,
2025-07-28 09:29:29 +08:00
dxScrollbarAnnotations, dxSkinBasic, dxSkinBlack, dxSkinBlue, dxSkinBlueprint,
dxSkinCaramel, dxSkinCoffee, dxSkinDarkroom, dxSkinDarkSide,
dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy,
dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian,
dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis,
dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black,
dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink,
dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue,
dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray,
dxSkinOffice2013White, dxSkinOffice2016Colorful, dxSkinOffice2016Dark,
dxSkinOffice2019Black, dxSkinOffice2019Colorful, dxSkinOffice2019DarkGray,
dxSkinOffice2019White, dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic,
dxSkinSharp, dxSkinSharpPlus, dxSkinSilver, dxSkinSpringtime, dxSkinStardust,
dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinTheBezier, dxSkinValentine,
dxSkinVisualStudio2013Blue, dxSkinVisualStudio2013Dark,
dxSkinVisualStudio2013Light, dxSkinVS2010, dxSkinWhiteprint,
dxSkinXmas2008Blue;
2024-07-04 16:01:24 +08:00
type
TfrmPayList = 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: TEdit;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v2CRTime: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
begdate: TDateTimePicker;
Enddate: TDateTimePicker;
GPM_1: TcxGridPopupMenu;
DS_1: TDataSource;
CDS_1: TClientDataSet;
btnAdd: TToolButton;
v2FactoryName: TcxGridDBColumn;
F_Name: TEdit;
Label4: TLabel;
CheckBox1: TCheckBox;
Label6: TLabel;
P_Code: TEdit;
v2OrderNo: TcxGridDBColumn;
cxTabControl1: TcxTabControl;
Label10: TLabel;
ConNo: TEdit;
Label11: TLabel;
BuyConNo: TEdit;
v2Column2: TcxGridDBColumn;
btnChk: TToolButton;
btnReChk: TToolButton;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
ToolButton4: TToolButton;
Label2: TLabel;
OppParentCoName: TEdit;
ToolButton5: TToolButton;
N2: TMenuItem;
btnEdit: TToolButton;
Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column17: TcxGridDBColumn;
Tv1Column18: TcxGridDBColumn;
Tv1Column19: TcxGridDBColumn;
Tv1Column20: TcxGridDBColumn;
Tv1Column21: TcxGridDBColumn;
Tv1Column22: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
ToolButton9: TToolButton;
N3: TMenuItem;
Tv1Column5: TcxGridDBColumn;
Tv1Column6: TcxGridDBColumn;
Tv1Column7: TcxGridDBColumn;
Tv1Column8: TcxGridDBColumn;
Tv1Column9: TcxGridDBColumn;
2024-08-01 10:13:17 +08:00
Tv1Column10: TcxGridDBColumn;
Tv1Column11: TcxGridDBColumn;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
SetDate1: TDateTimePicker;
Panel2: TPanel;
Panel3: TPanel;
Button1: TButton;
Panel4: TPanel;
SetDate2: TDateTimePicker;
Panel5: TPanel;
Button2: TButton;
ToolButton3: TToolButton;
Button3: TButton;
Button4: TButton;
2024-08-10 17:13:44 +08:00
ToolButton6: TToolButton;
2024-08-21 14:03:11 +08:00
ToolButton7: TToolButton;
2024-08-29 17:22:39 +08:00
Tv1Column12: TcxGridDBColumn;
2024-11-28 15:12:45 +08:00
Tv1Column13: TcxGridDBColumn;
2025-07-28 09:29:29 +08:00
Label1: TLabel;
OppBankName: TEdit;
2024-07-04 16:01:24 +08:00
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);
2024-08-01 10:13:17 +08:00
procedure Button1Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
2024-08-10 17:13:44 +08:00
procedure ToolButton6Click(Sender: TObject);
2024-08-21 14:03:11 +08:00
procedure ToolButton7Click(Sender: TObject);
2024-08-29 17:22:39 +08:00
procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
2024-07-04 16:01:24 +08:00
private
procedure InitGrid();
procedure SetStatus();
public
FAuthority: string;
end;
implementation
uses
2024-08-10 17:13:44 +08:00
U_DataLink, U_RTFun, U_PayInput, U_ZDYHelp, U_AttachmentUpload,U_FinFileUp;
2024-07-04 16:01:24 +08:00
{$R *.dfm}
procedure TfrmPayList.SetStatus();
begin
btnChk.Enabled := false; //<2F><><EFBFBD><EFBFBD>
btnReChk.Enabled := false; //<2F><><EFBFBD><EFBFBD>
// btnAdd.Enabled := false; //<2F><><EFBFBD><EFBFBD>
btnEdit.Enabled := false; //<2F>޸<EFBFBD>
btnDel.Enabled := false; //ɾ<><C9BE>
2024-08-01 10:13:17 +08:00
ToolButton1.Enabled := false; //<2F><><EFBFBD><EFBFBD>
ToolButton2.Enabled := false; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2024-07-04 16:01:24 +08:00
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;
2024-08-01 10:13:17 +08:00
ToolButton1.Enabled := true;
2024-07-04 16:01:24 +08:00
end;
2:
begin
2024-08-01 10:13:17 +08:00
ToolButton2.Enabled := true;
2024-07-04 16:01:24 +08:00
end;
end;
2024-08-01 10:13:17 +08:00
end
else if Trim(FAuthority) = <><C2BC>' then
2024-07-04 16:01:24 +08:00
begin
2024-08-01 10:13:17 +08:00
case cxTabControl1.TabIndex of
2024-07-04 16:01:24 +08:00
0:
begin
btnEdit.Enabled := true;
btnDel.Enabled := true;
// btnChk.Enabled := true;
end;
1:
begin
// btnReChk.Enabled := true;
end;
2:
begin
end;
end;
2024-08-01 10:13:17 +08:00
end
else if Trim(FAuthority) = '<27>Ǽ<EFBFBD>' then
begin
case cxTabControl1.TabIndex of
0:
begin
btnEdit.Enabled := true;
btnDel.Enabled := true;
// btnChk.Enabled := true;
end;
1:
begin
// btnReChk.Enabled := true;
ToolButton1.Enabled := true;
end;
2:
begin
ToolButton2.Enabled := true;
end;
end;
2024-07-04 16:01:24 +08:00
end;
end;
procedure TfrmPayList.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;
2024-08-10 17:13:44 +08:00
sql.Add(' select IsTP=cast((case when (select COUNT(T.WBID) from TP_File T where T.WBID=A.FFID)=0 then 0 else 1 end) as bit ) ');
2024-07-04 16:01:24 +08:00
sql.ADD(',A.*,B.account,B.OpenBank from Finance_Flow A');
2024-09-06 17:24:10 +08:00
sql.Add(' Left join BS_Company_Bank B on A.OppBankID=B.CBID ');
sql.Add(' where (A.FFType=''<27><><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>'' Or ISNULL(A.RegType,'''')=''<27>տ<EFBFBD>'')');
2024-07-04 16:01:24 +08:00
case cxTabControl1.TabIndex of
0:
begin
sql.Add(' and isnull(status,''0'')=''0'' ');
end;
1:
begin
2024-08-06 15:40:31 +08:00
sql.Add(' and isnull(status,''0'')=''1'' ');
2024-07-04 16:01:24 +08:00
end;
2024-08-01 10:13:17 +08:00
2:
begin
2024-08-06 15:40:31 +08:00
sql.Add(' and isnull(status,''0'')=''9'' ');
2024-08-01 10:13:17 +08:00
end;
2024-07-04 16:01:24 +08:00
end;
if CheckBox1.Checked then
begin
2024-08-01 10:13:17 +08:00
sql.Add(' and A.SQDate>=''' + FormatDateTime('yyyy-MM-dd', begdate.DateTime) + ''' ');
sql.Add(' and A.SQDate<''' + FormatDateTime('yyyy-MM-dd', Enddate.DateTime + 1) + ''' ');
2024-07-04 16:01:24 +08:00
end;
sql.Add(WSql);
2024-08-29 17:22:39 +08:00
// showmessage(sql.text);
2024-07-04 16:01:24 +08:00
Open;
end;
SCreateCDS(ADOQueryMain, CDS_1);
SInitCDSData(ADOQueryMain, CDS_1);
finally
ADOQueryMain.EnableControls;
TV1.DataController.Filter.Clear;
end;
end;
procedure TfrmPayList.N1Click(Sender: TObject);
begin
SelOKNo(cds_1, True);
end;
procedure TfrmPayList.N2Click(Sender: TObject);
begin
Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString)));
end;
procedure TfrmPayList.N3Click(Sender: TObject);
begin
SelOKNo(cds_1, false);
end;
procedure TfrmPayList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
procedure TfrmPayList.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmPayList.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
ADOQueryCmd.Connection.BeginTrans;
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)));
ADOQueryCmd.Connection.CommitTrans;
application.MessageBox(<><C9BE><EFBFBD>ɹ<EFBFBD>', '<27><>ʾ');
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
InitGrid();
end;
end;
procedure TfrmPayList.FormShow(Sender: TObject);
begin
inherited;
ReadCxGrid(trim(Self.Caption), Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
Enddate.DateTime := SGetServerDate(ADOQueryTemp);
2024-08-01 10:13:17 +08:00
SetDate1.DateTime := SGetServerDate(ADOQueryTemp);
SetDate2.DateTime := SGetServerDate(ADOQueryTemp);
2025-01-13 16:36:43 +08:00
begdate.DateTime := Enddate.DateTime - 91;
2024-07-04 16:01:24 +08:00
FAuthority := self.fParameters1;
SetStatus();
InitGrid();
end;
procedure TfrmPayList.TBRafreshClick(Sender: TObject);
begin
begdate.SetFocus;
InitGrid();
end;
procedure TfrmPayList.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 TfrmPayList.btnChkClick(Sender: TObject);
2024-08-01 10:13:17 +08:00
//begin
2024-08-21 14:03:11 +08:00
// Panel2.Left := (self.width - Panel2.width) div 2;
// Panel2.Visible := True;
//end;
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_1 ');
sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
sql.Add(',@Operation=''<27><><EFBFBD><EFBFBD>'' ');
Sql.Add(',@SetDate=''' + FormatDateTime('yyyy-MM-dd', Setdate1.DateTime) + ''' ');
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)));
2024-08-01 10:13:17 +08:00
// 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)));
2024-08-21 14:03:11 +08:00
ADOQueryCmd.Connection.CommitTrans;
application.MessageBox('<27><><EFBFBD>˳ɹ<CBB3>', '<27><>ʾ');
Panel2.Visible := False;
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
InitGrid();
// Panel2.Visible := False;
end;
end;
2024-08-01 10:13:17 +08:00
procedure TfrmPayList.btnReChkClick(Sender: TObject);
2024-07-04 16:01:24 +08:00
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;
2024-08-06 15:40:31 +08:00
sql.Add(' exec P_Fin_Flow_SetStatus_1 ');
2024-07-04 16:01:24 +08:00
sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
2024-08-01 10:13:17 +08:00
sql.Add(',@Operation=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
2024-08-06 15:40:31 +08:00
Sql.Add(',@SetDate=''' + FormatDateTime('yyyy-MM-dd', Setdate1.DateTime) + ''' ');
2024-07-04 16:01:24 +08:00
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)));
2024-08-01 10:13:17 +08:00
// 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>˳ɹ<CBB3>', '<27><>ʾ');
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
InitGrid();
end;
end;
procedure TfrmPayList.Button1Click(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;
2024-07-04 16:01:24 +08:00
with ADOQueryCmd do
begin
Close;
sql.Clear;
2024-08-01 10:13:17 +08:00
sql.Add(' exec P_Fin_Flow_SetStatus_1 ');
2024-07-04 16:01:24 +08:00
sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
2024-08-01 10:13:17 +08:00
sql.Add(',@Operation=''<27><><EFBFBD><EFBFBD>'' ');
Sql.Add(',@SetDate=''' + FormatDateTime('yyyy-MM-dd', Setdate1.DateTime) + ''' ');
2024-07-04 16:01:24 +08:00
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)));
2024-08-01 10:13:17 +08:00
// 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)));
2024-07-04 16:01:24 +08:00
ADOQueryCmd.Connection.CommitTrans;
application.MessageBox('<27><><EFBFBD>˳ɹ<CBB3>', '<27><>ʾ');
2024-08-10 17:13:44 +08:00
Panel2.Visible := False;
2024-07-04 16:01:24 +08:00
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
InitGrid();
2024-08-01 10:13:17 +08:00
Panel2.Visible := False;
2024-07-04 16:01:24 +08:00
end;
end;
2024-08-01 10:13:17 +08:00
procedure TfrmPayList.Button2Click(Sender: TObject);
2024-07-04 16:01:24 +08:00
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;
2024-08-01 10:13:17 +08:00
sql.Add(' exec P_Fin_Flow_SetStatus_1 ');
2024-07-04 16:01:24 +08:00
sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
2024-08-01 10:13:17 +08:00
sql.Add(',@Operation=''<27><><EFBFBD><EFBFBD>'' ');
Sql.Add(',@SetDate=''' + FormatDateTime('yyyy-MM-dd', Setdate2.DateTime) + ''' ');
2024-07-04 16:01:24 +08:00
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;
2024-08-01 10:13:17 +08:00
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>', '<27><>ʾ');
2024-08-10 17:13:44 +08:00
Panel4.Visible := False;
2024-07-04 16:01:24 +08:00
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
InitGrid();
2024-08-10 17:13:44 +08:00
Panel4.Visible := False;
2024-07-04 16:01:24 +08:00
end;
2024-08-01 10:13:17 +08:00
end;
procedure TfrmPayList.Button3Click(Sender: TObject);
begin
// inherited;
Panel4.Visible := False;
end;
procedure TfrmPayList.Button4Click(Sender: TObject);
begin
Panel2.Visible := False;
2024-07-04 16:01:24 +08:00
end;
procedure TfrmPayList.btnAddClick(Sender: TObject);
begin
try
frmPayInput := TfrmPayInput.Create(Application);
with frmPayInput do
begin
FFFID := '';
if ShowModal = 1 then
begin
InitGrid();
end;
end;
finally
frmPayInput.Free;
end;
end;
2024-08-01 10:13:17 +08:00
procedure TfrmPayList.ToolButton1Click(Sender: TObject);
begin
Panel4.Left := (self.width - Panel4.width) div 2;
Panel4.Visible := True;
end;
procedure TfrmPayList.ToolButton2Click(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;
2024-08-06 15:40:31 +08:00
sql.Add(' exec P_Fin_Flow_SetStatus_1 ');
2024-08-01 10:13:17 +08:00
sql.Add(' @FFIDS=' + QuotedStr(FFFIDS));
sql.Add(',@Operation=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
2024-08-06 15:40:31 +08:00
Sql.Add(',@SetDate=''' + FormatDateTime('yyyy-MM-dd', Setdate2.DateTime) + ''' ');
2024-08-01 10:13:17 +08:00
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>ɹ<EFBFBD>', '<27><>ʾ');
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
InitGrid();
end;
end;
procedure TfrmPayList.ToolButton3Click(Sender: TObject);
begin
try
frmPayInput := TfrmPayInput.Create(Application);
with frmPayInput do
begin
FFFID := Trim(SELF.CDS_1.fieldbyname('FFID').AsString);
PState := '<27><><EFBFBD><EFBFBD>';
if ShowModal = 1 then
begin
InitGrid();
end;
end;
finally
frmPayInput.Free;
end;
end;
2024-07-04 16:01:24 +08:00
procedure TfrmPayList.ToolButton4Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
TcxGridToExcel(self.Caption, cxgrid1);
end;
procedure TfrmPayList.ToolButton5Click(Sender: TObject);
begin
WriteCxGrid(trim(Self.Caption), Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
2024-08-10 17:13:44 +08:00
procedure TfrmPayList.ToolButton6Click(Sender: TObject);
begin
try
frmFinFileUp := TfrmFinFileUp.Create(Application);
with frmFinFileUp do
begin
// Code.Text := Trim(Self.CDS_1.fieldbyname('CoCode').AsString);
FBCIID := Trim(Self.CDS_1.fieldbyname('FFID').AsString);
if ShowModal = 1 then
begin
Self.InitGrid();
// Self.CDS_1.Locate('BCIID', BCIID, []);
end;
end;
finally
frmFinFileUp.Free;
end;
end;
2024-08-21 14:03:11 +08:00
procedure TfrmPayList.ToolButton7Click(Sender: TObject);
begin
try
frmPayInput := TfrmPayInput.Create(Application);
with frmPayInput do
begin
FFFID := Trim(SELF.CDS_1.fieldbyname('FFID').AsString);
ToolButton3.visible:=False;
if ShowModal = 1 then
begin
InitGrid();
end;
end;
finally
frmPayInput.Free;
end;
end;
2024-07-04 16:01:24 +08:00
procedure TfrmPayList.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
frmPayInput := TfrmPayInput.Create(Application);
with frmPayInput do
begin
FFFID := Trim(SELF.CDS_1.fieldbyname('FFID').AsString);
if ShowModal = 1 then
begin
InitGrid();
end;
end;
finally
frmPayInput.Free;
end;
end;
procedure TfrmPayList.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 := 'SD';
if ShowModal = 1 then
begin
end;
end;
finally
frmAttachmentUpload.Free;
end;
end;
2024-08-29 17:22:39 +08:00
procedure TfrmPayList.Tv1CustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
begin
if AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('RegType').Index] = '<27>տ<EFBFBD>' then
begin
ACanvas.Brush.Color := $00FF8080;
end
end;
2024-07-04 16:01:24 +08:00
procedure TfrmPayList.OppCoNameKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
InitGrid();
end;
end;
procedure TfrmPayList.cxTabControl1Change(Sender: TObject);
begin
SetStatus();
InitGrid();
end;
end.