D10myYicheng/发货申请(ShipmentRequest.dll)/U_FHSQListSel.pas

352 lines
10 KiB
ObjectPascal
Raw Normal View History

2025-05-27 14:08:09 +08:00
unit U_FHSQListSel;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls,
cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView,
cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, RM_Dataset, RM_System,
RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, cxPC, cxButtonEdit,
cxDropDownEdit, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters,
dxBarBuiltInMenu, cxNavigator, dxSkinsCore, dxSkinsDefaultPainters,
dxDateRanges, U_BaseList;
type
TfrmFHSQListSel = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBClose: TToolButton;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
Order_Main: TClientDataSet;
ToolButton1: TToolButton;
Panel1: TPanel;
Label1: TLabel;
Label4: TLabel;
Label8: TLabel;
Label9: TLabel;
Label12: TLabel;
Label13: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
CustomerNoName: TEdit;
MPRTCodeName: TEdit;
HZSCConNo: TEdit;
MPRTKZ: TEdit;
MPRTMF: TEdit;
cxTabControl1: TcxTabControl;
cxSplitter1: TcxSplitter;
ADOQuerySub: TADOQuery;
DataSource2: TDataSource;
Label2: TLabel;
ClientDataSet2: TClientDataSet;
cxGridPopupMenu2: TcxGridPopupMenu;
ToolButton2: TToolButton;
Label3: TLabel;
FSID: TEdit;
cxTabControl2: TcxTabControl;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column4: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1OrdDate: TcxGridDBColumn;
v1Column26: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column17: TcxGridDBColumn;
v1Column18: TcxGridDBColumn;
v1Column19: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column27: TcxGridDBColumn;
cv1Column12: TcxGridDBColumn;
cv1Column14: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cv2Column10: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v2Column7: TcxGridDBColumn;
cv2Column4: TcxGridDBColumn;
cv2Column12: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
cv2Column6: TcxGridDBColumn;
Tv2Column6: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
Tv2Column3: TcxGridDBColumn;
Tv2Column2: TcxGridDBColumn;
v2Column8: TcxGridDBColumn;
v2Column9: TcxGridDBColumn;
Tv2Column1: TcxGridDBColumn;
Tv2Column4: TcxGridDBColumn;
Tv2Column5: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
//RMllPDFExport1: TRMllPDFExport;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure CustomerNoNameChange(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure ToolButton2Click(Sender: TObject);
procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure Tv1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure cxTabControl2Change(Sender: TObject);
procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
private
procedure InitGrid();
procedure InitSubGrid();
procedure InitForm();
{ Private declarations }
public
FFInt: Integer;
canshu1: string;
canshu2: string;
{ Public declarations }
end;
var
frmFHSQListSel: TfrmFHSQListSel;
implementation
uses
U_DataLink, U_RTFun, U_ZDYHelp;
{$R *.dfm}
procedure TfrmFHSQListSel.FormDestroy(Sender: TObject);
begin
frmFHSQListSel := nil;
end;
procedure TfrmFHSQListSel.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmFHSQListSel.FormCreate(Sender: TObject);
begin
cxgrid1.Align := alClient;
end;
procedure TfrmFHSQListSel.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>ZY', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>ZY', Tv2, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
Close;
end;
procedure TfrmFHSQListSel.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
Sql.Add(' select A.*,NoteZ=A.Note,dfpshz=(SQPSHZ-isnull(FHPSHZ,0)) ');
Sql.Add(' ,HZSCConNo=CAST((select distinct(SCConNo) + '' '' from FHSQ_Sub X where A.FSID=X.FSID for xml path('''') ) AS VARCHAR(100))');
sql.Add(' from FHSQ_Main A');
sql.Add(' where 1=1'); //chkstatus=''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>''
sql.Add('AND ISNULL(FHDANWEI,''<27><>'')=' + quotedstr(canshu2));
// sql.Add('and SQQTYHZ>isnull(FHQTYHZ,0)');
if cxTabControl1.TabIndex <> 0 then
begin
sql.Add(' and SQDate>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.Date)) + '''');
sql.Add(' and SQDate<''' + Trim(FormatDateTime('yyyy-MM-dd', EndDate.Date + 1)) + '''');
end;
if cxTabControl2.TabIndex = 0 then
begin
sql.Add('and isnull(FHPSHZ,0)=0');
end;
if cxTabControl2.TabIndex = 1 then
begin
sql.Add('and isnull(FHPSHZ,0)>0');
end;
SQL.Add('order by sqdate desc');
// showmessage(sql.text);
Open;
end;
SCreateCDS(ADOQueryMain, Order_Main);
SInitCDSData(ADOQueryMain, Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmFHSQListSel.InitForm();
begin
ReadCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>ZY', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
ReadCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>ZY', Tv2, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
EndDate.DateTime := SGetServerDate(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime - 7;
InitGrid();
end;
procedure TfrmFHSQListSel.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS(ADOQueryMain, Order_Main);
SInitCDSData(ADOQueryMain, Order_Main);
end;
procedure TfrmFHSQListSel.TBRafreshClick(Sender: TObject);
begin
InitGrid();
TBFind.Click;
InitSubGrid();
end;
procedure TfrmFHSQListSel.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmFHSQListSel.CheckBox1Click(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmFHSQListSel.CheckBox2Click(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmFHSQListSel.CustomerNoNameChange(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS(ADOQueryMain, Order_Main);
SInitCDSData(ADOQueryMain, Order_Main);
end;
procedure TfrmFHSQListSel.InitSubGrid();
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
if Order_Main.IsEmpty = False then
sql.Add('select * from FHSQ_Sub A where A.FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''')
else
sql.Add('select * from FHSQ_Sub A where 1=2');
Open;
end;
SCreateCDS(ADOQueryTemp, ClientDataSet2);
SInitCDSData(ADOQueryTemp, ClientDataSet2);
end;
procedure TfrmFHSQListSel.cxTabControl1Change(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmFHSQListSel.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
if Order_Main.IsEmpty = False then
begin
sql.Add('select A.* from FHSQ_Sub A ');
// sql.Add(' inner join CLoth_Sub B on A.SubId=B.SubId');
// sql.Add(' inner join CLoth_Main C on B.MainId=C.MainId');
sql.Add(' where A.FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
end
else
begin
sql.Add('select A.* from FHSQ_Sub A ');
// sql.Add(' inner join CLoth_Sub B on A.SubId=B.SubId');
// sql.Add(' inner join CLoth_Main C on B.MainId=C.MainId');
sql.Add(' where 1=2');
end;
Open;
end;
SCreateCDS(ADOQueryTemp, ClientDataSet2);
SInitCDSData(ADOQueryTemp, ClientDataSet2);
end;
procedure TfrmFHSQListSel.ToolButton2Click(Sender: TObject);
begin
ModalResult := 1;
end;
procedure TfrmFHSQListSel.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
ModalResult := 1;
end;
procedure TfrmFHSQListSel.Tv1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
ToolButton2.Click;
end;
procedure TfrmFHSQListSel.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
if Order_Main.IsEmpty = False then
begin
sql.Add('select A.*, B.ORDERNO from FHSQ_Sub A LEFT JOIN JYOrder_Main B ON A.MainId=B.MainId ');
// sql.Add(' inner join CLoth_Sub B on A.SubId=B.SubId');
// sql.Add(' inner join CLoth_Main C on B.MainId=C.MainId');
sql.Add(' where A.FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
end
else
begin
sql.Add('select A.*, B.ORDERNO from FHSQ_Sub A LEFT JOIN JYOrder_Main B ON A.MainId=B.MainId ');
sql.Add(' where 1=2');
end;
Open;
end;
SCreateCDS(ADOQueryTemp, ClientDataSet2);
SInitCDSData(ADOQueryTemp, ClientDataSet2);
end;
procedure TfrmFHSQListSel.cxTabControl2Change(Sender: TObject);
begin
InitGrid();
end;
end.