D10gmBitao/进度统计查询(Statistics.dll)/U_PBJYCLList.pas

414 lines
11 KiB
ObjectPascal
Raw Permalink Normal View History

2025-04-11 10:54:54 +08:00
unit U_PBJYCLList;
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, cxCalendar, cxButtonEdit, cxSplitter, RM_Common, RM_Class,
RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, cxTextEdit, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator, dxSkinsCore, dxSkinsDefaultPainters,
dxDateRanges, dxBarBuiltInMenu, U_BaseList, cxContainer, dxCore, cxDateUtils,
cxMaskEdit, cxDropDownEdit, cxCheckBox, cxPC;
type
TfrmPBJYCLList = class(TFrmBaseList)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
Label5: TLabel;
C_CodeName: TEdit;
TBExport: TToolButton;
Order_Main: TClientDataSet;
RM1: TRMGridReport;
RMXLSExport1: TRMXLSExport;
CDS_PRT: TClientDataSet;
RMDBPRT: TRMDBDataSet;
RMDBPZ: TRMDBDataSet;
CDS_PZ: TClientDataSet;
CDS_SJ: TClientDataSet;
RMDBSJ: TRMDBDataSet;
Label10: TLabel;
C_Code: TEdit;
RMDBDataSet1: TRMDBDataSet;
ClientDataSet1: TClientDataSet;
CDS_WJG: TClientDataSet;
RMDBWJG: TRMDBDataSet;
Label6: TLabel;
BatchNoHZ: TEdit;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
cxStyleRepository2: TcxStyleRepository;
cxStyle2: TcxStyle;
cxStyle3: TcxStyle;
cxStyleRepository3: TcxStyleRepository;
cxStyle4: TcxStyle;
KHName: TEdit;
Label4: TLabel;
Label7: TLabel;
carno: TEdit;
Label9: TLabel;
CheckBox1: TCheckBox;
BegDate: TcxDateEdit;
EndDate: TcxDateEdit;
Label1: TLabel;
filler: TEdit;
cxPageControl1: TcxPageControl;
cxTabSheet1: TcxTabSheet;
cxTabSheet2: TcxTabSheet;
Panel2: TPanel;
Label20: TLabel;
Panel3: TPanel;
Image1: TImage;
Button1: TButton;
RadioGroup1: TRadioGroup;
cxGrid3: TcxGrid;
TV2: TcxGridDBTableView;
cxGridDBColumn3: TcxGridDBColumn;
cxgrdbclmnv1Column14: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v1Column15: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
cxGridDBColumn5: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v1Column16: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
cxGridDBColumn6: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column2: TcxGridDBColumn;
v1Column21: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v1PRTOrderQty: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
CDS_MAIN: TClientDataSet;
DataSource2: TDataSource;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ConNoChange(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure Tv1DblClick(Sender: TObject);
procedure carnoKeyPress(Sender: TObject; var Key: Char);
procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
procedure cxPageControl1Change(Sender: TObject);
procedure C_CodeKeyPress(Sender: TObject; var Key: Char);
private
FInt, PFInt: Integer;
procedure InitGrid();
procedure InitForm();
function DelData(): Boolean;
procedure InitButton();
procedure SetStatus();
{ Private declarations }
public
canshu1, FCheJian: string;
{ Public declarations }
end;
var
frmPBJYCLList: TfrmPBJYCLList;
implementation
uses
U_DataLink, U_RTFun, U_ZDYHelp, U_ClothCLCXList;
//U_ClothSCInPutSC ,U_ClothSCInPut ,U_SCPerson
{$R *.dfm}
procedure TfrmPBJYCLList.SetStatus();
begin
case cxPageControl1.ActivePageIndex of
0:
begin
ClearOrHideControls(Panel1, '0', True, True);
ClearOrHideControls(Panel1, '1', True, False);
end;
1:
begin
ClearOrHideControls(Panel1, '0', false, True);
ClearOrHideControls(Panel1, '1', True, True);
end;
end;
end;
procedure TfrmPBJYCLList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmPBJYCLList.InitButton();
begin
end;
procedure TfrmPBJYCLList.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27><><EFBFBD><EFBFBD>ͳ<EFBFBD>Ʋ<EFBFBD>ѯ', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmPBJYCLList.InitGrid();
var
WSQL: string;
begin
WSQL := SGetFilters(Panel1, 1, 2);
if Trim(WSQL) <> '' then
WSQL := ' and ' + WSQL;
try
case cxPageControl1.ActivePageIndex of
0:
begin
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add('exec P_Viwe_PBJYLIST @begdate=' + quotedstr(BegDate.Text));
sql.Add(',@enddate=' + quotedstr(endDate.Text));
sql.Add(',@WSql=' + quotedstr(WSQL));
Open;
end;
SCreateCDS(ADOQueryMain, order_main);
SInitCDSData(ADOQueryMain, order_main);
end;
1:
begin
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
SQL.Add('SELECT * FROM V_PB_JYLIST');
sql.Add('where 1=1 ' + (WSQL));
sql.Add(' and FILLTIME>=''' + BegDate.TEXT + '''');
sql.Add(' and FILLTIME<''' + ENDDATE.Text + '''');
Open;
end;
SCreateCDS(ADOQueryMain, CDS_Main);
SInitCDSData(ADOQueryMain, CDS_Main);
end;
end;
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmPBJYCLList.InitForm();
begin
SETSTATUS();
InitButton();
ReadCxGrid('<27><><EFBFBD><EFBFBD>ͳ<EFBFBD>Ʋ<EFBFBD>ѯ', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
EndDate.Text := FormatDateTime('yyyy-MM-dd', SGetServerDate(ADOQueryTemp) + 1) + ' 08:00:00';
BegDate.Text := FormatDateTime('yyyy-MM-dd', SGetServerDate(ADOQueryTemp) - 1) + ' 08:00:00';
InitGrid();
end;
procedure TfrmPBJYCLList.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;
function TfrmPBJYCLList.DelData(): Boolean;
begin
try
Result := false;
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Cloth_Sub where SubId=''' + Trim(Order_Main.fieldbyname('SubId').AsString) + '''');
ExecSQL;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from Cloth_Sub where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Cloth_Main where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + '''');
ExecSQL;
end;
end;
if Trim(Order_Main.fieldbyname('SubId').AsString) = '' then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Cloth_Main where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + '''');
ExecSQL;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Cloth_PaiZhen where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + '''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Cloth_YCL_PB where MainId=''' + Trim(Order_Main.fieldbyname('MainId').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 TfrmPBJYCLList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
case cxPageControl1.ActivePageIndex of
0:
begin
TcxGridToExcel('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD>', cxGrid1);
end;
1:
begin
TcxGridToExcel('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8>', cxGrid3);
end;
end;
end;
procedure TfrmPBJYCLList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmPBJYCLList.ConNoChange(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 TfrmPBJYCLList.cxPageControl1Change(Sender: TObject);
begin
inherited;
SetStatus();
InitGrid();
end;
procedure TfrmPBJYCLList.C_CodeKeyPress(Sender: TObject; var Key: Char);
begin
inherited;
if Key = #13 then
begin
InitGrid();
end;
end;
procedure TfrmPBJYCLList.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmPBJYCLList.FormDestroy(Sender: TObject);
begin
frmPBJYCLList := nil;
end;
procedure TfrmPBJYCLList.Tv1DblClick(Sender: TObject);
begin
AssignmentControls(Panel1, ORDER_MAIN, '0');
cxPageControl1.ActivePageIndex := 1;
// try
// frmClothCLCXList := TfrmClothCLCXList.Create(Application);
// with frmClothCLCXList do
// begin
// FMainID := self.Order_Main.fieldbyname('MainID').asstring;
// if ShowModal = 1 then
// begin
//
// end;
// end;
// finally
// frmClothCLCXList.Free;
// end;
end;
procedure TfrmPBJYCLList.carnoKeyPress(Sender: TObject; var Key: Char);
begin
InitGrid();
end;
procedure TfrmPBJYCLList.Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var
FDDZT: string;
begin
if AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('DDZT').Index] = null then
Exit;
FDDZT := AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('DDZT').Index];
// if FDDZT = '<27>ѿ<EFBFBD>ʼ' then
// ACanvas.Font.Color :=$FF0000;
if FDDZT = '<27>ѽ<EFBFBD><D1BD><EFBFBD>' then
ACanvas.Font.Color := $0000FF;
end;
end.