D10xhGemei/A09财务通用管理/U_ReceivableValueSel.pas

254 lines
7.4 KiB
ObjectPascal
Raw Normal View History

2024-12-14 17:23:12 +08:00
unit U_ReceivableValueSel;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, ToolWin, ComCtrls, U_BaseHelp, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxGridLevel, cxClasses, cxControls,
cxGridCustomView, cxGrid, DBClient, ADODB, ImgList, StdCtrls, ExtCtrls,
cxTextEdit, cxGridCustomPopupMenu, cxGridPopupMenu, cxLookAndFeels,
2025-07-17 14:27:41 +08:00
cxLookAndFeelPainters, cxNavigator, dxDateRanges, dxBarBuiltInMenu,
System.ImageList, U_BaseInput, cxButtonEdit, cxDropDownEdit, cxCheckBox,
Vcl.Menus, dxScrollbarAnnotations, FrameDateSel, cxContainer, cxCalendar,
dxSkinsCore, dxSkinsDefaultPainters;
2024-12-14 17:23:12 +08:00
type
TfrmReceivableValueSel = class(TfrmBaseHelp)
ToolBar1: TToolBar;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
DS_1: TDataSource;
CDS_1: TClientDataSet;
TBSave: TToolButton;
TBClose: TToolButton;
ToolButton1: TToolButton;
ADOConnection1: TADOConnection;
Panel1: TPanel;
GPM_1: TcxGridPopupMenu;
ImageList1: TImageList;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
ThreeColorBase: TcxStyleRepository;
SHuangSe: TcxStyle;
SkyBlue: TcxStyle;
Default: TcxStyle;
QHuangSe: TcxStyle;
Red: TcxStyle;
FontBlue: TcxStyle;
TextSHuangSe: TcxStyle;
FonePurple: TcxStyle;
FoneClMaroon: TcxStyle;
FoneRed: TcxStyle;
RowColor: TcxStyle;
handBlack: TcxStyle;
cxBlue: TcxStyle;
SHuangSeCu: TcxStyle;
PM_1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
frmFrameDateSel1: TfrmFrameDateSel;
ToolButton2: TToolButton;
Label3: TLabel;
Label4: TLabel;
Label6: TLabel;
Label10: TLabel;
Label11: TLabel;
Label2: TLabel;
OppCoName: TcxTextEdit;
F_Name: TcxTextEdit;
F_Code: TcxTextEdit;
ConNo: TcxTextEdit;
BuyConNo: TcxTextEdit;
OppParentCoName: TcxTextEdit;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
Tv1Column22: TcxGridDBColumn;
v2CRTime: TcxGridDBColumn;
Tv1Column23: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
v2FactoryName: TcxGridDBColumn;
v2OrderNo: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column19: TcxGridDBColumn;
Tv1Column24: TcxGridDBColumn;
Tv1Column20: TcxGridDBColumn;
Tv1Column21: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
Tv1Column6: TcxGridDBColumn;
Tv1Column7: TcxGridDBColumn;
Tv1Column28: TcxGridDBColumn;
Tv1Column8: TcxGridDBColumn;
Tv1Column9: TcxGridDBColumn;
Tv1Column29: TcxGridDBColumn;
Tv1Column30: TcxGridDBColumn;
Tv1Column10: TcxGridDBColumn;
Tv1Column31: TcxGridDBColumn;
Tv1Column27: TcxGridDBColumn;
Tv1Column11: TcxGridDBColumn;
Tv1Column12: TcxGridDBColumn;
Tv1Column13: TcxGridDBColumn;
Tv1Column14: TcxGridDBColumn;
Tv1Column15: TcxGridDBColumn;
Tv1Column39: TcxGridDBColumn;
Tv1Column37: TcxGridDBColumn;
Tv1Column38: TcxGridDBColumn;
Tv1Column16: TcxGridDBColumn;
Tv1Column17: TcxGridDBColumn;
Tv1Column18: TcxGridDBColumn;
Tv1Column25: TcxGridDBColumn;
Tv1Column26: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
Tv1Column32: TcxGridDBColumn;
Tv1Column34: TcxGridDBColumn;
Tv1Column33: TcxGridDBColumn;
Tv1Column36: TcxGridDBColumn;
Tv1Column35: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure TV1DblClick(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure ConNoChange(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
FCoType, FAuthority, FConNo, FC_Code: string;
{ Public declarations }
end;
var
frmReceivableValueSel: TfrmReceivableValueSel;
implementation
uses
U_DataLink, U_RTFun;
{$R *.dfm}
procedure TfrmReceivableValueSel.FormCreate(Sender: TObject);
begin
inherited;
try
with ADOConnection1 do
begin
Connected := false;
ConnectionString := DConString;
Connected := true;
end;
ADOQueryBaseCmd.Connection := ADOConnection1;
ADOQueryBaseTemp.Connection := ADOConnection1;
except
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
end;
end;
procedure TfrmReceivableValueSel.ConNoChange(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS(ADOQueryMain, CDS_1);
SInitCDSData(ADOQueryMain, CDS_1);
end;
procedure TfrmReceivableValueSel.FormClose(Sender: TObject; var Action: TCloseAction);
begin
// BuyName.SetFocus;
Action := cahide;
end;
procedure TfrmReceivableValueSel.InitGrid();
var
Msql, mbegdate, menddate: string;
SqlStr: string;
begin
SqlStr := ' select A.* ';
SqlStr := SqlStr + ',FJFlag=CAST((CASE WHEN (SELECT COUNT(X.FileName) FROM FJ_File X where X.TFType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮ'' and X.WBID=A.FFID)>0 THEN 1 ELSE 0 END) AS BIT)';
2025-07-17 14:27:41 +08:00
SqlStr := SqlStr + ',ConDate=(select top 1 ConDate from Bs_Contract_Main X where X.ConNo=A.ConNo)';
SqlStr := SqlStr + ',DlyNote=(select top 1 DlyNote from Bs_Contract_Main X where X.ConNo=A.ConNo)';
2024-12-14 17:23:12 +08:00
SqlStr := SqlStr + ' from Finance_Flow A ';
2025-07-17 14:27:41 +08:00
SqlStr := SqlStr + ' left join Bs_Company B on A.OppCoNo=B.CoCode ';
2024-12-14 17:23:12 +08:00
SqlStr := SqlStr + ' where A.FFType='<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>'' ';
SqlStr := SqlStr + ' and A.FFTime>=''' + Trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.BegDate.Date)) + '''';
SqlStr := SqlStr + ' and A.FFTime<''' + Trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.enddate.Date + 1)) + '''';
2025-07-17 14:27:41 +08:00
SqlStr := SqlStr + ' and isnull(A.status,''0'')=''9'' ';
if FAuthority = '<27><>Ȩ<EFBFBD><C8A8>' then
SqlStr := SqlStr + ' and CHARINDEX(' + quotedstr(DCode) + ',(ISNULL(B.SalesId, '''') +'',''+ISNULL(B.TallyId, '''')+'',''+ISNULL(A.FillId, '''') ) ) > 0 ';
2024-12-14 17:23:12 +08:00
InitCDSData(ADOQueryMain, CDS_1, Tv1, SqlStr, SGetFilters(Panel1, 1, 2), 'FFID');
end;
procedure TfrmReceivableValueSel.N1Click(Sender: TObject);
begin
SelOKNo(CDS_1, True);
end;
procedure TfrmReceivableValueSel.N2Click(Sender: TObject);
begin
SelOKNo(CDS_1, False);
end;
procedure TfrmReceivableValueSel.FormShow(Sender: TObject);
begin
inherited;
ReadCxGrid(Trim(self.Caption), TV1, '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
frmFrameDateSel1.Enddate.Date := SGetServerDate(ADOQueryTemp);
frmFrameDateSel1.begdate.Date := frmFrameDateSel1.Enddate.Date - 30;
InitGrid();
end;
procedure TfrmReceivableValueSel.TBCloseClick(Sender: TObject);
begin
inherited;
Close;
end;
procedure TfrmReceivableValueSel.TBSaveClick(Sender: TObject);
begin
WriteCxGrid(Trim(self.Caption), TV1, '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmReceivableValueSel.ToolButton1Click(Sender: TObject);
begin
// BuyName.SetFocus;
ModalResult := 1;
end;
procedure TfrmReceivableValueSel.ToolButton2Click(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmReceivableValueSel.TV1DblClick(Sender: TObject);
begin
ModalResult := 1;
end;
procedure TfrmReceivableValueSel.FormDestroy(Sender: TObject);
begin
inherited;
frmReceivableValueSel := nil;
end;
end.