D7myYunxiang/发货申请(DeliveryApplication.dll)/U_FHSQListSel.pas
DESKTOP-E401PHE\Administrator 1011cb7292 1
2025-01-20 13:04:03 +08:00

336 lines
9.1 KiB
ObjectPascal
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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,
RM_E_llPDF, cxDropDownEdit, cxTextEdit;
type
TfrmFHSQListSel = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBClose: TToolButton;
Tv1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
v1OrdDate: TcxGridDBColumn;
v1OrdPerson1: TcxGridDBColumn;
Order_Main: TClientDataSet;
RMDBDataSet1: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
v1CustomerNoName: TcxGridDBColumn;
ADOQueryPrint: TADOQuery;
CDS_Print: TClientDataSet;
v1Column4: TcxGridDBColumn;
Panel1: TPanel;
Label1: TLabel;
Label4: TLabel;
Label5: TLabel;
Label8: TLabel;
Label9: TLabel;
Label12: TLabel;
Label13: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
CustomerNoName: TEdit;
ConPerson1: TEdit;
MPRTCodeName: TEdit;
ConNo: TEdit;
MPRTKZ: TEdit;
MPRTMF: TEdit;
cxTabControl1: TcxTabControl;
cxSplitter1: TcxSplitter;
ADOQuerySub: TADOQuery;
DataSource2: TDataSource;
v1Column8: TcxGridDBColumn;
Label2: TLabel;
ClientDataSet2: TClientDataSet;
cxGridPopupMenu2: TcxGridPopupMenu;
CDS_Note: TClientDataSet;
RM1: TRMGridReport;
v1Column11: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column17: TcxGridDBColumn;
v1Column18: TcxGridDBColumn;
v1Column19: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column21: TcxGridDBColumn;
ToolButton2: TToolButton;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
v2Column4: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v2Column8: TcxGridDBColumn;
v2Column12: TcxGridDBColumn;
v2Column9: TcxGridDBColumn;
v2Column10: 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 ToolButton2Click(Sender: TObject);
procedure Tv1DblClick(Sender: TObject);
procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
private
procedure InitGrid();
procedure InitSubGrid();
procedure InitForm();
function DelData(): Boolean;
{ Private declarations }
public
FFInt: Integer;
canshu1: string;
{ Public declarations }
end;
var
frmFHSQListSel: TfrmFHSQListSel;
implementation
uses
U_DataLink, U_FHSQInPut, U_Fun, 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
Close;
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD>', Tv2, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmFHSQListSel.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
Sql.Add(' select A.* ');
sql.Add(' from FHSQ_Main A');
sql.Add(' where 1=1');
if cxTabControl1.TabIndex <> 0 then
begin
sql.Add(' and filltime>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.Date)) + '''');
sql.Add(' and filltime<''' + Trim(FormatDateTime('yyyy-MM-dd', EndDate.Date + 1)) + '''');
end;
if cxTabControl1.TabIndex = 0 then
begin
SQL.Add(' and isnull(A.Chker,'''')='''' ');
end
else if cxTabControl1.TabIndex = 1 then
begin
SQL.Add(' and isnull(A.Chker,'''')<>'''' ');
end;
// if Trim(canshu1)<>'<27><>Ȩ<EFBFBD><C8A8>' then
// begin
// sql.Add(' and isnull(A.Filler,'''')='''+Trim(DName)+'''');
// end;
Open;
end;
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmFHSQListSel.InitForm();
begin
// if Self.Caption='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
// begin
//
// Tnochk.Visible:=False;
// canshu1:='';
// end else
// if Self.Caption='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>Ȩ<EFBFBD><C8A8>)' then
// begin
// tchk.Visible:=False;
// Tnochk.Visible:=False;
// canshu1:='<27><>Ȩ<EFBFBD><C8A8>';
// end else
// if Self.Caption='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
// begin
// canshu1:='<27><>Ȩ<EFBFBD><C8A8>';
// end;
ReadCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
ReadCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD>', Tv2, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
EndDate.DateTime := SGetServerDate10(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime;
InitGrid();
end;
procedure TfrmFHSQListSel.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
end;
function TfrmFHSQListSel.DelData(): Boolean;
begin
try
Result := false;
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete FHSQ_Sub where FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete FHSQ_Main where FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
ExecSQL;
end;
ADOQueryCmd.Connection.CommitTrans;
Result := True;
except
ADOQueryCmd.Connection.RollbackTrans;
Result := False;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><ECB3A3>', '<27><>ʾ', 0);
end;
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));
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(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;
SCreateCDS20(ADOQueryTemp, ClientDataSet2);
SInitCDSData20(ADOQueryTemp, ClientDataSet2);
end;
procedure TfrmFHSQListSel.cxTabControl1Change(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmFHSQListSel.ToolButton2Click(Sender: TObject);
begin
ModalResult := 1;
end;
procedure TfrmFHSQListSel.Tv1DblClick(Sender: TObject);
begin
ModalResult := 1;
end;
procedure TfrmFHSQListSel.Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
begin
if (AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('SQPSHZ').Index]) = (AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('FHPSHZ').Index]) then
ACanvas.Brush.Color := $FFFF00;
end;
procedure TfrmFHSQListSel.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select A.* from FHSQ_Sub A ');
sql.Add(' where A.FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
Open;
end;
SCreateCDS20(ADOQueryTemp, ClientDataSet2);
SInitCDSData20(ADOQueryTemp, ClientDataSet2);
end;
end.