388 lines
10 KiB
ObjectPascal
388 lines
10 KiB
ObjectPascal
|
unit U_DyeGreyClothStkStats;
|
|||
|
|
|||
|
interface
|
|||
|
|
|||
|
uses
|
|||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|||
|
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
|
|||
|
cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView,
|
|||
|
cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel, cxClasses,
|
|||
|
cxControls, cxGridCustomView, cxGridDBTableView, cxGrid, StdCtrls, ComCtrls,
|
|||
|
ExtCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient,
|
|||
|
cxDropDownEdit, cxCheckBox, RM_Common, RM_Class, RM_e_Xls, RM_Dataset,
|
|||
|
RM_System, RM_GridReport, Menus, cxCalendar, cxButtonEdit, cxTextEdit,
|
|||
|
cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters,
|
|||
|
cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseList,
|
|||
|
dxScrollbarAnnotations;
|
|||
|
|
|||
|
type
|
|||
|
TfrmDyeGreyClothStkStats = class(TfrmBaseList)
|
|||
|
ToolBar1: TToolBar;
|
|||
|
TBRafresh: TToolButton;
|
|||
|
TBFind: TToolButton;
|
|||
|
TBClose: TToolButton;
|
|||
|
Panel1: TPanel;
|
|||
|
ADOQueryCmd: TADOQuery;
|
|||
|
ADOQueryMain: TADOQuery;
|
|||
|
DS_Main: TDataSource;
|
|||
|
cxGridPopupMenu1: TcxGridPopupMenu;
|
|||
|
CDS_Main: TClientDataSet;
|
|||
|
CDS_HZ: TClientDataSet;
|
|||
|
PopupMenu1: TPopupMenu;
|
|||
|
cxGrid2: TcxGrid;
|
|||
|
Tv1: TcxGridDBTableView;
|
|||
|
v1Column14: TcxGridDBColumn;
|
|||
|
v2Column1: TcxGridDBColumn;
|
|||
|
Tv1Material: TcxGridDBColumn;
|
|||
|
Tv1CKPiece: TcxGridDBColumn;
|
|||
|
Tv1CKQty: TcxGridDBColumn;
|
|||
|
cxGrid2Level1: TcxGridLevel;
|
|||
|
Label3: TLabel;
|
|||
|
Label8: TLabel;
|
|||
|
C_name: TEdit;
|
|||
|
finishDescription: TEdit;
|
|||
|
Tv1IOTime: TcxGridDBColumn;
|
|||
|
v1Column7: TcxGridDBColumn;
|
|||
|
v1Column9: TcxGridDBColumn;
|
|||
|
ToolButton2: TToolButton;
|
|||
|
ToolButton1: TToolButton;
|
|||
|
ADOQueryTmp: TADOQuery;
|
|||
|
Tv1Column4: TcxGridDBColumn;
|
|||
|
Tv1finishDescription: TcxGridDBColumn;
|
|||
|
Tv1OrderNo: TcxGridDBColumn;
|
|||
|
Tv1Note: TcxGridDBColumn;
|
|||
|
TbExport: TToolButton;
|
|||
|
Label1: TLabel;
|
|||
|
Label4: TLabel;
|
|||
|
BegDate: TDateTimePicker;
|
|||
|
EndDate: TDateTimePicker;
|
|||
|
Tv1CKIOTime: TcxGridDBColumn;
|
|||
|
TbSave: TToolButton;
|
|||
|
procedure FormDestroy(Sender: TObject);
|
|||
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|||
|
procedure TBRafreshClick(Sender: TObject);
|
|||
|
procedure ConNoMChange(Sender: TObject);
|
|||
|
procedure TBCloseClick(Sender: TObject);
|
|||
|
procedure FormShow(Sender: TObject);
|
|||
|
procedure TBFindClick(Sender: TObject);
|
|||
|
procedure MPRTCodeNameChange(Sender: TObject);
|
|||
|
procedure SXBatchNOChange(Sender: TObject);
|
|||
|
procedure FromCoNameChange(Sender: TObject);
|
|||
|
// procedure ToolButton1Click(Sender: TObject);
|
|||
|
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
|
|||
|
procedure FormCreate(Sender: TObject);
|
|||
|
procedure ToolButton2Click(Sender: TObject);
|
|||
|
procedure Tv1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
|
|||
|
|
|||
|
procedure Tv1Column3PropertiesChange(Sender: TObject);
|
|||
|
procedure Tv1Column3PropertiesEditValueChanged(Sender: TObject);
|
|||
|
procedure TbExportClick(Sender: TObject);
|
|||
|
procedure TbSaveClick(Sender: TObject);
|
|||
|
private
|
|||
|
procedure InitGrid();
|
|||
|
function SaveData(): Boolean;
|
|||
|
{ Private declarations }
|
|||
|
public
|
|||
|
FstkName, FWorkshop: string;
|
|||
|
{ Public declarations }
|
|||
|
end;
|
|||
|
|
|||
|
var
|
|||
|
frmDyeGreyClothStkStats: TfrmDyeGreyClothStkStats;
|
|||
|
|
|||
|
implementation
|
|||
|
|
|||
|
uses
|
|||
|
U_DataLink, U_RTFun, U_ZDYHelp;
|
|||
|
|
|||
|
{$R *.dfm}
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.FormDestroy(Sender: TObject);
|
|||
|
begin
|
|||
|
inherited;
|
|||
|
frmDyeGreyClothStkStats := nil;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.FormClose(Sender: TObject; var Action: TCloseAction);
|
|||
|
begin
|
|||
|
inherited;
|
|||
|
Action := caFree;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.FormCreate(Sender: TObject);
|
|||
|
begin
|
|||
|
inherited;
|
|||
|
FWorkshop := Trim(self.fParameters3);
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.InitGrid();
|
|||
|
begin
|
|||
|
try
|
|||
|
ADOQueryMain.DisableControls;
|
|||
|
with ADOQueryMain do
|
|||
|
begin
|
|||
|
Filtered := False;
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add(' select A.*');
|
|||
|
sql.Add(' from V_BS_Cloth_StkStats A ');
|
|||
|
sql.add(' where A.IOTime>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + '''');
|
|||
|
sql.Add(' and A.IOTime<''' + Trim(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1)) + '''');
|
|||
|
sql.Add(' and isnull(stkName,'''')=''' + Trim(FstkName) + '''');
|
|||
|
if trim(FWorkshop) <> '' then
|
|||
|
sql.Add(' and A.Workshop=''' + trim(FWorkshop) + ''' ');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
SCreateCDS(ADOQueryMain, CDS_Main);
|
|||
|
SInitCDSData(ADOQueryMain, CDS_Main);
|
|||
|
finally
|
|||
|
ADOQueryMain.EnableControls;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.TBRafreshClick(Sender: TObject);
|
|||
|
begin
|
|||
|
InitGrid();
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.ConNoMChange(Sender: TObject);
|
|||
|
begin
|
|||
|
if ADOQueryMain.Active then
|
|||
|
begin
|
|||
|
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.TBCloseClick(Sender: TObject);
|
|||
|
begin
|
|||
|
|
|||
|
Close;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.TbExportClick(Sender: TObject);
|
|||
|
begin
|
|||
|
if ADOQueryMain.IsEmpty then
|
|||
|
exit;
|
|||
|
TcxGridToExcel(FSTKName + '<27><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', cxGrid2);
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.FormShow(Sender: TObject);
|
|||
|
begin
|
|||
|
inherited;
|
|||
|
ReadCxGrid(trim(Self.Caption), Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD><CDB3>');
|
|||
|
BegDate.DateTime := SGetServerDate(ADOQueryCmd) - 2;
|
|||
|
EndDate.DateTime := SGetServerDate(ADOQueryCmd);
|
|||
|
InitGrid();
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.TBFindClick(Sender: TObject);
|
|||
|
begin
|
|||
|
if ADOQueryMain.Active then
|
|||
|
begin
|
|||
|
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
|
|||
|
SCreateCDS(ADOQueryMain, CDS_Main);
|
|||
|
SInitCDSData(ADOQueryMain, CDS_Main);
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.MPRTCodeNameChange(Sender: TObject);
|
|||
|
begin
|
|||
|
TBFind.Click;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.SXBatchNOChange(Sender: TObject);
|
|||
|
begin
|
|||
|
TBFind.Click;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.FromCoNameChange(Sender: TObject);
|
|||
|
begin
|
|||
|
TBFind.Click;
|
|||
|
end;
|
|||
|
|
|||
|
//procedure TfrmDyeGreyClothStkList.ToolButton1Click(Sender: TObject);
|
|||
|
//var
|
|||
|
// FPiZhong: string;
|
|||
|
// FReal: Double;
|
|||
|
//begin
|
|||
|
// if Trim(edit1.Text) = '' then
|
|||
|
// begin
|
|||
|
// Application.MessageBox('<27><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
|
|||
|
// Exit;
|
|||
|
// end;
|
|||
|
//
|
|||
|
// with ADOQueryCmd do
|
|||
|
// begin
|
|||
|
// Close;
|
|||
|
// sql.Clear;
|
|||
|
// sql.Add(' update BS_Cloth_IO set StkPosition=' + quotedstr(Trim(edit1.Text)));
|
|||
|
// sql.Add(' where bcioid= ' + quotedstr(cds_main.FieldByName('bcioid').asstring));
|
|||
|
//
|
|||
|
//// sql.Add('Update JYOrder_Main Set StkPosition=' + quotedstr(edit1.Text));
|
|||
|
//// sql.Add(' where Mainid=''' + Trim(CDS_MAIN.fieldbyname('Mainid').AsString) + '''');
|
|||
|
// ExecSQL;
|
|||
|
// end;
|
|||
|
// with CDS_MAIN do
|
|||
|
// begin
|
|||
|
// Edit;
|
|||
|
// FieldByName('StkPosition').Value := edit1.Text;
|
|||
|
// Post;
|
|||
|
// end;
|
|||
|
// tv1.Controller.EditingController.ShowEdit();
|
|||
|
//end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.ToolButton2Click(Sender: TObject);
|
|||
|
begin
|
|||
|
WriteCxGrid(trim(Self.Caption), Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD><CDB3>');
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.TbSaveClick(Sender: TObject);
|
|||
|
begin
|
|||
|
|
|||
|
if SaveData() then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!', '<27><>ʾ', 0);
|
|||
|
InitGrid();
|
|||
|
end;
|
|||
|
|
|||
|
end;
|
|||
|
|
|||
|
function TfrmDyeGreyClothStkStats.SaveData(): Boolean;
|
|||
|
begin
|
|||
|
try
|
|||
|
ADOQueryCmd.Connection.BeginTrans;
|
|||
|
CDS_Main.DisableControls;
|
|||
|
CDS_Main.First;
|
|||
|
while not CDS_Main.Eof do
|
|||
|
begin
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
SQL.Clear;
|
|||
|
sql.add('select * from BS_Cloth_IO where OrderNo = ' + QuotedStr(Trim(CDS_Main.FieldByName('OrderNo').AsString)));
|
|||
|
Open;
|
|||
|
end;
|
|||
|
ADOQueryCmd.First;
|
|||
|
while not ADOQueryCmd.Eof do
|
|||
|
begin
|
|||
|
ADOQueryCmd.Edit;
|
|||
|
ADOQueryCmd.FieldByName('finish').value := CDS_Main.FieldByName('finish').AsString;
|
|||
|
ADOQueryCmd.FieldByName('Note').value := CDS_Main.FieldByName('Note').AsString;
|
|||
|
ADOQueryCmd.Post;
|
|||
|
ADOQueryCmd.Next;
|
|||
|
end;
|
|||
|
CDS_Main.Next;
|
|||
|
end;
|
|||
|
|
|||
|
CDS_Main.EnableControls;
|
|||
|
ADOQueryCmd.Connection.CommitTrans;
|
|||
|
|
|||
|
Result := True;
|
|||
|
except
|
|||
|
Result := False;
|
|||
|
ADOQueryCmd.Connection.RollbackTrans;
|
|||
|
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
|
|||
|
end;
|
|||
|
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
|
|||
|
begin
|
|||
|
ModalResult := 1;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.Tv1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
|
|||
|
begin
|
|||
|
inherited;
|
|||
|
try
|
|||
|
frmZDYHelp := TfrmZDYHelp.Create(Application);
|
|||
|
with frmZDYHelp do
|
|||
|
begin
|
|||
|
flag := 'StkPosition';
|
|||
|
flagname := '<27><>λ';
|
|||
|
MainType := FSTKName;
|
|||
|
if ShowModal = 1 then
|
|||
|
begin
|
|||
|
with Self.CDS_Main do
|
|||
|
begin
|
|||
|
Edit;
|
|||
|
FieldByName('StkPosition').Value := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
|
|||
|
with ADOQueryTemp do
|
|||
|
begin
|
|||
|
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
|
|||
|
sql.Add(' update BS_Cloth_IO set StkPosition=' + quotedstr(Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString)));
|
|||
|
sql.Add(' where bcioid= ' + quotedstr(cds_main.FieldByName('bcioid').asstring));
|
|||
|
|
|||
|
execsql;
|
|||
|
end;
|
|||
|
end;
|
|||
|
end;
|
|||
|
end;
|
|||
|
finally
|
|||
|
frmZDYHelp.Free;
|
|||
|
end;
|
|||
|
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.Tv1Column3PropertiesChange(Sender: TObject);
|
|||
|
var
|
|||
|
mvalue, FFieldName: string;
|
|||
|
begin
|
|||
|
|
|||
|
mvalue := TcxTextEdit(Sender).EditingText;
|
|||
|
FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
|
|||
|
with CDS_Main do
|
|||
|
begin
|
|||
|
Edit;
|
|||
|
FieldByName(FFieldName).Value := mvalue;
|
|||
|
Post;
|
|||
|
end;
|
|||
|
with ADOQueryTmp do
|
|||
|
begin
|
|||
|
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
|
|||
|
sql.Add(' update BS_Cloth_IO set StkPosition=' + quotedstr(Trim(mvalue)));
|
|||
|
sql.Add(' where bcioid= ' + quotedstr(cds_main.FieldByName('bcioid').asstring));
|
|||
|
|
|||
|
execsql;
|
|||
|
end;
|
|||
|
|
|||
|
tv1.Controller.EditingController.ShowEdit();
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmDyeGreyClothStkStats.Tv1Column3PropertiesEditValueChanged(Sender: TObject);
|
|||
|
var
|
|||
|
mvalue, FFieldName: string;
|
|||
|
begin
|
|||
|
|
|||
|
mvalue := TcxTextEdit(Sender).EditingText;
|
|||
|
FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
|
|||
|
with CDS_Main do
|
|||
|
begin
|
|||
|
Edit;
|
|||
|
FieldByName(FFieldName).Value := mvalue;
|
|||
|
Post;
|
|||
|
end;
|
|||
|
with ADOQueryTmp do
|
|||
|
begin
|
|||
|
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
|
|||
|
sql.Add(' update BS_Cloth_IO set StkPosition=' + quotedstr(Trim(mvalue)));
|
|||
|
sql.Add(' where bcioid= ' + quotedstr(cds_main.FieldByName('bcioid').asstring));
|
|||
|
|
|||
|
execsql;
|
|||
|
end;
|
|||
|
|
|||
|
tv1.Controller.EditingController.ShowEdit();
|
|||
|
end;
|
|||
|
|
|||
|
end.
|
|||
|
|