376 lines
8.8 KiB
ObjectPascal
376 lines
8.8 KiB
ObjectPascal
![]() |
unit U_FinishedClothStatistical;
|
|||
|
|
|||
|
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, MovePanel, cxTextEdit,
|
|||
|
cxContainer, cxCurrencyEdit, BtnEdit, RM_e_main, RM_e_htm, RM_e_Graphic,
|
|||
|
RM_e_Jpeg, RM_e_txt, RM_e_csv, RM_E_llPDF, Math, Clipbrd, cxPC;
|
|||
|
|
|||
|
type
|
|||
|
TfrmFinishedClothStatistical = class(TForm)
|
|||
|
ToolBar1: TToolBar;
|
|||
|
TBClose: TToolButton;
|
|||
|
Panel1: TPanel;
|
|||
|
BegDate: TDateTimePicker;
|
|||
|
EndDate: TDateTimePicker;
|
|||
|
cxGridPopupMenu1: TcxGridPopupMenu;
|
|||
|
ADOQueryCmd: TADOQuery;
|
|||
|
ADOQueryMain: TADOQuery;
|
|||
|
ADOQueryTemp: TADOQuery;
|
|||
|
DS_Main: TDataSource;
|
|||
|
Label8: TLabel;
|
|||
|
PopupMenu1: TPopupMenu;
|
|||
|
N1: TMenuItem;
|
|||
|
N2: TMenuItem;
|
|||
|
RM2: TRMGridReport;
|
|||
|
RMDB_Main: TRMDBDataSet;
|
|||
|
ADOQueryPrint: TADOQuery;
|
|||
|
MovePanel2: TMovePanel;
|
|||
|
RMXLSExport1: TRMXLSExport;
|
|||
|
IsJYTime: TCheckBox;
|
|||
|
N3: TMenuItem;
|
|||
|
X1: TMenuItem;
|
|||
|
Order_Main: TClientDataSet;
|
|||
|
DCheG: TEdit;
|
|||
|
Label1: TLabel;
|
|||
|
Button1: TButton;
|
|||
|
Label2: TLabel;
|
|||
|
Label3: TLabel;
|
|||
|
Label4: TLabel;
|
|||
|
Label5: TLabel;
|
|||
|
Label6: TLabel;
|
|||
|
Label7: TLabel;
|
|||
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|||
|
procedure FormCreate(Sender: TObject);
|
|||
|
procedure TBCloseClick(Sender: TObject);
|
|||
|
procedure TBFindClick(Sender: TObject);
|
|||
|
procedure FormShow(Sender: TObject);
|
|||
|
procedure N1Click(Sender: TObject);
|
|||
|
procedure N2Click(Sender: TObject);
|
|||
|
procedure MJIDKeyPress(Sender: TObject; var Key: Char);
|
|||
|
procedure conNOKeyPress(Sender: TObject; var Key: Char);
|
|||
|
procedure MJStr2Change(Sender: TObject);
|
|||
|
procedure RKOrdIDKeyPress(Sender: TObject; var Key: Char);
|
|||
|
procedure N3Click(Sender: TObject);
|
|||
|
procedure X1Click(Sender: TObject);
|
|||
|
procedure DCheGClick(Sender: TObject);
|
|||
|
procedure Button1Click(Sender: TObject);
|
|||
|
private
|
|||
|
DQdate: TDateTime;
|
|||
|
FLeft, FTop: Integer;
|
|||
|
CurrentPage, RecordsNumber: Integer;
|
|||
|
procedure InitGrid();
|
|||
|
procedure InitForm();
|
|||
|
function Savedata(): Boolean;
|
|||
|
{ Private declarations }
|
|||
|
public
|
|||
|
FFInt: Integer;
|
|||
|
canshu1: string;
|
|||
|
{ Public declarations }
|
|||
|
end;
|
|||
|
|
|||
|
var frmFinishedClothStatistical : TfrmFinishedClothStatistical;
|
|||
|
|
|||
|
implementation
|
|||
|
|
|||
|
uses
|
|||
|
U_DataLink, U_Fun, U_MJEdit, U_ZDYHelp, U_SysLogHelp, U_SCPerson;
|
|||
|
|
|||
|
{$R *.dfm}
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.FormClose(Sender: TObject; var Action: TCloseAction);
|
|||
|
begin
|
|||
|
Action := caFree;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.FormCreate(Sender: TObject);
|
|||
|
begin
|
|||
|
|
|||
|
DQdate := SGetServerDate(ADOQueryTemp);
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.TBCloseClick(Sender: TObject);
|
|||
|
begin
|
|||
|
Close;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.InitGrid();
|
|||
|
var
|
|||
|
FEndTime,FBegTime: string;
|
|||
|
begin
|
|||
|
|
|||
|
if IsJYTime.Checked then
|
|||
|
begin
|
|||
|
FBegTime := quotedstr(FormatDateTime('yyyy-MM-dd', BegDate.DateTime));
|
|||
|
FEndTime := quotedstr(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1));
|
|||
|
end
|
|||
|
else
|
|||
|
begin
|
|||
|
FBegTime := '';
|
|||
|
FEndTime := '';
|
|||
|
end;
|
|||
|
|
|||
|
|
|||
|
try
|
|||
|
ADOQueryMain.DisableControls;
|
|||
|
with ADOQueryMain do
|
|||
|
begin
|
|||
|
Filtered := False;
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('exec P_CK_Cloth_DCG');
|
|||
|
sql.Add('@DCheG='+QuotedStr(Trim(DCheG.Text)));
|
|||
|
sql.Add(',@FBegTime='+FBegTime);
|
|||
|
sql.Add(',@FEndTime='+FEndTime);
|
|||
|
ShowMessage(SQL.Text);
|
|||
|
Open;
|
|||
|
end;
|
|||
|
SCreateCDS20(ADOQueryMain, Order_Main);
|
|||
|
SInitCDSData20(ADOQueryMain, Order_Main);
|
|||
|
|
|||
|
Label6.Caption:=Trim(Order_Main.fieldbyname('LenHZ').AsString)+'<27><>';
|
|||
|
Label7.Caption:=Trim(Order_Main.fieldbyname('PS').AsString)+'<27><>';
|
|||
|
|
|||
|
//MovePanel2.Visible := false;
|
|||
|
finally
|
|||
|
ADOQueryMain.EnableControls;
|
|||
|
//MovePanel2.Visible := false;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.InitForm();
|
|||
|
var
|
|||
|
fsj: string;
|
|||
|
begin
|
|||
|
BegDate.DateTime := SGetServerDateTime(ADOQueryTemp);
|
|||
|
EndDate.DateTime := SGetServerDateTime(ADOQueryTemp)
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.TBFindClick(Sender: TObject);
|
|||
|
var
|
|||
|
fsj, fwhere: string;
|
|||
|
begin
|
|||
|
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.FormShow(Sender: TObject);
|
|||
|
begin
|
|||
|
|
|||
|
InitForm();
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.N1Click(Sender: TObject);
|
|||
|
begin
|
|||
|
SelOKNo(Order_Main, True);
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.N2Click(Sender: TObject);
|
|||
|
begin
|
|||
|
SelOKNo(Order_Main, False);
|
|||
|
end;
|
|||
|
|
|||
|
function TfrmFinishedClothStatistical.Savedata(): Boolean;
|
|||
|
var
|
|||
|
maxno, LLID: string;
|
|||
|
HXPS: Integer;
|
|||
|
HXQty, HXMQty: Double;
|
|||
|
begin
|
|||
|
HXPS := 0;
|
|||
|
HXQty := 0;
|
|||
|
with ADOQueryTemp do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select Top 1 * from Contract_Cloth_LL where OrdSubId=''' + Trim(Order_Main.fieldbyname('SubId').AsString) + '''');
|
|||
|
sql.Add(' and FirstName=''' + Trim(Order_Main.fieldbyname('AOrddefstr4').AsString) + '''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
LLID := Trim(ADOQueryTemp.fieldbyname('LLID').AsString);
|
|||
|
if Trim(LLID) = '' then
|
|||
|
begin
|
|||
|
Result := False;
|
|||
|
Application.MessageBox('û<><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ļӹ<C4BC><D3B9><EFBFBD>!', '<27><>ʾ', 0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
try
|
|||
|
ADOQueryCmd.Connection.BeginTrans;
|
|||
|
if GetLSNo(ADOQueryCmd, maxno, 'HX', 'Contract_Cloth_BefChkHX', 2, 1) = False then
|
|||
|
begin
|
|||
|
Result := False;
|
|||
|
ADOQueryCmd.Connection.RollbackTrans;
|
|||
|
Application.MessageBox('ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
with Order_Main do
|
|||
|
begin
|
|||
|
First;
|
|||
|
while not Eof do
|
|||
|
begin
|
|||
|
if Order_Main.FieldByName('SSel').AsBoolean = True then
|
|||
|
begin
|
|||
|
HXPS := HXPS + 1;
|
|||
|
HXQty := HXQty + Order_Main.FieldByName('MJLen').Value;
|
|||
|
end;
|
|||
|
Next;
|
|||
|
end;
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
except
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.MJIDKeyPress(Sender: TObject; var Key: Char);
|
|||
|
begin
|
|||
|
if Key = #13 then
|
|||
|
begin
|
|||
|
CurrentPage := 1;
|
|||
|
InitGrid();
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.conNOKeyPress(Sender: TObject; var Key: Char);
|
|||
|
begin
|
|||
|
if Key = #13 then
|
|||
|
begin
|
|||
|
CurrentPage := 1;
|
|||
|
InitGrid();
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.MJStr2Change(Sender: TObject);
|
|||
|
begin
|
|||
|
CurrentPage := 1;
|
|||
|
InitGrid();
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.RKOrdIDKeyPress(Sender: TObject; var Key: Char);
|
|||
|
begin
|
|||
|
if Key = #13 then
|
|||
|
begin
|
|||
|
CurrentPage := 1;
|
|||
|
InitGrid();
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.N3Click(Sender: TObject);
|
|||
|
var
|
|||
|
SSubId, SGangNo: string;
|
|||
|
begin
|
|||
|
|
|||
|
with Order_Main do
|
|||
|
begin
|
|||
|
SSubId := trim(FieldByName('SubId').AsString);
|
|||
|
Order_Main.DisableControls;
|
|||
|
first;
|
|||
|
while not eof do
|
|||
|
begin
|
|||
|
if SSubId = trim(FieldByName('SubId').AsString) then
|
|||
|
begin
|
|||
|
edit;
|
|||
|
FieldByName('SSel').value := true;
|
|||
|
Post;
|
|||
|
end
|
|||
|
else
|
|||
|
begin
|
|||
|
edit;
|
|||
|
FieldByName('SSel').value := false;
|
|||
|
Post;
|
|||
|
end;
|
|||
|
Next;
|
|||
|
end;
|
|||
|
Order_Main.Locate('SubId', VarArrayOf([SSubId]), []);
|
|||
|
Order_Main.EnableControls;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.X1Click(Sender: TObject);
|
|||
|
var
|
|||
|
str, SSubId: string;
|
|||
|
ZChiShu, DQChiShu: integer;
|
|||
|
ISSel: boolean;
|
|||
|
begin
|
|||
|
ISSel := true;
|
|||
|
SSubId := trim(Order_Main.FieldByName('SubId').AsString);
|
|||
|
str := '';
|
|||
|
if InputQuery('ѡ<><D1A1>', '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', str) then
|
|||
|
begin
|
|||
|
ZChiShu := strtointdef(str, 0);
|
|||
|
if ZChiShu <= 0 then
|
|||
|
exit;
|
|||
|
|
|||
|
with Order_Main do
|
|||
|
begin
|
|||
|
|
|||
|
Order_Main.DisableControls;
|
|||
|
first;
|
|||
|
DQChiShu := 0;
|
|||
|
while not eof do
|
|||
|
begin
|
|||
|
|
|||
|
if SSubId = trim(FieldByName('SubId').AsString) then
|
|||
|
begin
|
|||
|
edit;
|
|||
|
FieldByName('SSel').value := ISSel;
|
|||
|
DQChiShu := DQChiShu + 1;
|
|||
|
Post;
|
|||
|
end
|
|||
|
else
|
|||
|
begin
|
|||
|
edit;
|
|||
|
FieldByName('SSel').value := false;
|
|||
|
Post;
|
|||
|
end;
|
|||
|
if DQChiShu = ZChiShu then
|
|||
|
ISSel := false;
|
|||
|
Next;
|
|||
|
end;
|
|||
|
Order_Main.Locate('SubId', VarArrayOf([SSubId]), []);
|
|||
|
Order_Main.EnableControls;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.DCheGClick(Sender: TObject);
|
|||
|
begin
|
|||
|
try
|
|||
|
frmSCPerson := TfrmSCPerson.Create(self);
|
|||
|
with frmSCPerson do
|
|||
|
begin
|
|||
|
FlagStr := 'SCPerson';
|
|||
|
if ShowModal = 1 then
|
|||
|
begin
|
|||
|
DCheG.Text := frmSCPerson.FSDPerson;
|
|||
|
end;
|
|||
|
end;
|
|||
|
finally
|
|||
|
frmSCPerson.Free;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmFinishedClothStatistical.Button1Click(Sender: TObject);
|
|||
|
begin
|
|||
|
if DCheG.Text ='' then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><F1B5B2B3><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
InitGrid();
|
|||
|
end;
|
|||
|
|
|||
|
end.
|
|||
|
|