D10sxYilanbuyi/F01染色坯布仓库/U_DyeGreyClothStkStats.pas
2025-10-16 19:49:06 +08:00

388 lines
10 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_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.