348 lines
10 KiB
ObjectPascal
348 lines
10 KiB
ObjectPascal
unit U_TradeClothTotalStkList;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Vcl.Printers, 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, cxNavigator, dxDateRanges,
|
||
dxBarBuiltInMenu, U_BaseList, dxScrollbarAnnotations, cxContainer,
|
||
cxProgressBar, cxButtons, cxMaskEdit, dxSkinsCore, dxSkinsDefaultPainters,
|
||
cxPC;
|
||
|
||
type
|
||
TfrmTradeClothTotalStkList = class(TfrmBaseList)
|
||
ToolBar1: TToolBar;
|
||
TBRafresh: TToolButton;
|
||
TBFind: TToolButton;
|
||
TBClose: TToolButton;
|
||
Panel1: TPanel;
|
||
ADOQueryCmd: TADOQuery;
|
||
ADO_2: TADOQuery;
|
||
ADOQueryTemp: TADOQuery;
|
||
DS_1: TDataSource;
|
||
GPM_1: TcxGridPopupMenu;
|
||
CDS_1: TClientDataSet;
|
||
PopupMenu1: TPopupMenu;
|
||
Label3: TLabel;
|
||
Label4: TLabel;
|
||
Label2: TLabel;
|
||
C_name: TcxTextEdit;
|
||
FromCoName: TcxTextEdit;
|
||
C_Color: TcxTextEdit;
|
||
ToolButton2: TToolButton;
|
||
Label6: TLabel;
|
||
C_ColorNo: TcxTextEdit;
|
||
N1: TMenuItem;
|
||
N2: TMenuItem;
|
||
ToolButton3: TToolButton;
|
||
cxPageControl1: TcxPageControl;
|
||
cxTabSheet1: TcxTabSheet;
|
||
cxTabSheet2: TcxTabSheet;
|
||
cxGrid1: TcxGrid;
|
||
Tv1: TcxGridDBTableView;
|
||
Tv1Column33: TcxGridDBColumn;
|
||
Tv1Column13: TcxGridDBColumn;
|
||
v1Column6: TcxGridDBColumn;
|
||
v1Column2: TcxGridDBColumn;
|
||
v1Column4: TcxGridDBColumn;
|
||
v1Column14: TcxGridDBColumn;
|
||
Tv1Column11: TcxGridDBColumn;
|
||
v2Column1: TcxGridDBColumn;
|
||
v1Column8: TcxGridDBColumn;
|
||
Tv1Column4: TcxGridDBColumn;
|
||
v1Column13: TcxGridDBColumn;
|
||
v1Column11: TcxGridDBColumn;
|
||
Tv1Column6: TcxGridDBColumn;
|
||
v1Column15: TcxGridDBColumn;
|
||
v2Column6: TcxGridDBColumn;
|
||
v1Column3: TcxGridDBColumn;
|
||
Tv1Column19: TcxGridDBColumn;
|
||
v1Column19: TcxGridDBColumn;
|
||
v1Column12: TcxGridDBColumn;
|
||
v1Column20: TcxGridDBColumn;
|
||
Tv1Column3: TcxGridDBColumn;
|
||
Tv1Column5: TcxGridDBColumn;
|
||
Tv1Column1: TcxGridDBColumn;
|
||
Tv1Column21: TcxGridDBColumn;
|
||
Tv1Column2: TcxGridDBColumn;
|
||
Tv1Column10: TcxGridDBColumn;
|
||
Tv1Column7: TcxGridDBColumn;
|
||
Tv1Column8: TcxGridDBColumn;
|
||
Tv1Column9: TcxGridDBColumn;
|
||
Tv1Column12: TcxGridDBColumn;
|
||
Tv1Column27: TcxGridDBColumn;
|
||
Tv1Column15: TcxGridDBColumn;
|
||
Tv1Column16: TcxGridDBColumn;
|
||
Tv1Column17: TcxGridDBColumn;
|
||
Tv1Column18: TcxGridDBColumn;
|
||
Tv1Column22: TcxGridDBColumn;
|
||
Tv1Column25: TcxGridDBColumn;
|
||
Tv1Column28: TcxGridDBColumn;
|
||
Tv1Column30: TcxGridDBColumn;
|
||
Tv1Column31: TcxGridDBColumn;
|
||
Tv1Column36: TcxGridDBColumn;
|
||
Tv1Column39: TcxGridDBColumn;
|
||
Tv1Column40: TcxGridDBColumn;
|
||
cxGrid1Level1: TcxGridLevel;
|
||
cxGrid2: TcxGrid;
|
||
TV2: TcxGridDBTableView;
|
||
cxGridDBColumn9: TcxGridDBColumn;
|
||
cxGridDBColumn14: TcxGridDBColumn;
|
||
cxGridDBColumn15: TcxGridDBColumn;
|
||
cxGridDBColumn16: TcxGridDBColumn;
|
||
cxGridDBColumn17: TcxGridDBColumn;
|
||
cxGridDBColumn24: TcxGridDBColumn;
|
||
cxGridDBColumn26: TcxGridDBColumn;
|
||
cxGridDBColumn28: TcxGridDBColumn;
|
||
cxGridDBColumn29: TcxGridDBColumn;
|
||
cxGridLevel1: TcxGridLevel;
|
||
GPM_2: TcxGridPopupMenu;
|
||
CDS_2: TClientDataSet;
|
||
DS_2: TDataSource;
|
||
ADO_1: TADOQuery;
|
||
Label1: TLabel;
|
||
StkPosition: TcxTextEdit;
|
||
TV2Column1: TcxGridDBColumn;
|
||
procedure FormDestroy(Sender: TObject);
|
||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||
procedure TBRafreshClick(Sender: TObject);
|
||
procedure TBCloseClick(Sender: TObject);
|
||
procedure FormShow(Sender: TObject);
|
||
procedure TBFindClick(Sender: TObject);
|
||
procedure MPRTCodeNameChange(Sender: TObject);
|
||
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
|
||
procedure ToolButton2Click(Sender: TObject);
|
||
procedure FromCoNamePropertiesChange(Sender: TObject);
|
||
procedure FormCreate(Sender: TObject);
|
||
procedure N1Click(Sender: TObject);
|
||
procedure N2Click(Sender: TObject);
|
||
procedure FromCoNameKeyPress(Sender: TObject; var Key: Char);
|
||
procedure ToolButton3Click(Sender: TObject);
|
||
procedure TV2DblClick(Sender: TObject);
|
||
procedure cxPageControl1Change(Sender: TObject);
|
||
private
|
||
canshu1, FSTKName, canshu3, canshu4: string;
|
||
procedure InitGrid();
|
||
procedure InitGrid1();
|
||
procedure InitGrid2();
|
||
{ Private declarations }
|
||
public
|
||
{ Public declarations }
|
||
end;
|
||
|
||
var
|
||
frmTradeClothTotalStkList: TfrmTradeClothTotalStkList;
|
||
|
||
implementation
|
||
|
||
uses
|
||
U_DataLink, U_RTFun, U_PrintLabFun, U_dynamicsDll, U_printPdf,
|
||
U_TradeClothSplit, U_LabelPrint;
|
||
|
||
{$R *.dfm}
|
||
|
||
procedure TfrmTradeClothTotalStkList.FormDestroy(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
frmTradeClothTotalStkList := nil;
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.cxPageControl1Change(Sender: TObject);
|
||
begin
|
||
case cxPageControl1.ActivePageIndex of
|
||
1:
|
||
begin
|
||
InitGrid1();
|
||
end;
|
||
end;
|
||
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.FormClose(Sender: TObject; var Action: TCloseAction);
|
||
begin
|
||
inherited;
|
||
Action := caFree;
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.FormCreate(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
canshu1 := Trim(self.fParameters1);
|
||
FSTKName := Trim(self.fParameters2);
|
||
canshu3 := Trim(self.fParameters3);
|
||
canshu4 := Trim(self.fParameters4);
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.InitGrid();
|
||
begin
|
||
case cxPageControl1.ActivePageIndex of
|
||
0:
|
||
begin
|
||
InitGrid2();
|
||
end;
|
||
1:
|
||
begin
|
||
|
||
InitGrid1();
|
||
end;
|
||
end;
|
||
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.InitGrid2();
|
||
var
|
||
SqlStr: string;
|
||
begin
|
||
|
||
SqlStr := ' select A.C_Code,C_Name,C_Color,C_ColorNo,C_Degree,C_Pattern,QtyUnit,StkPieceint=sum(CEILING(A.StkPiece)),StkQty=sum(StkQty),QtyUnit,StkPosition ';
|
||
SqlStr := SqlStr + ' from BS_Cloth_IO A ';
|
||
SqlStr := SqlStr + ' where A.IOFlag=''<27><><EFBFBD><EFBFBD>'' and (isnull(StkQty,0)>0 or isnull(StkPiece,0)>0) ';
|
||
SqlStr := SqlStr + ' and isnull(stkName,'''')=''' + Trim(FstkName) + '''';
|
||
|
||
if Trim(canshu4) <> '' then
|
||
SqlStr := SqlStr + ' and isnull(StkCoName,'''')=''' + Trim(canshu4) + '''';
|
||
|
||
SqlStr := SqlStr + ' group by C_Code,C_Name,C_Color,C_ColorNo,C_Degree,C_Pattern,QtyUnit,StkPosition';
|
||
|
||
// ShowMessage(SqlStr);
|
||
InitCDSData(ADO_2, CDS_2, Tv2, SqlStr, SGetFilters(Panel1, 1, 2), 'C_Code');
|
||
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.InitGrid1();
|
||
var
|
||
SqlStr, WSqlStr: string;
|
||
begin
|
||
|
||
SqlStr := ' select A.*,StkPieceint=CEILING(A.StkPiece) ';
|
||
SqlStr := SqlStr + ' from BS_Cloth_IO A ';
|
||
SqlStr := SqlStr + ' where A.IOFlag=''<27><><EFBFBD><EFBFBD>'' and (isnull(StkQty,0)>0 or isnull(StkPiece,0)>0) ';
|
||
SqlStr := SqlStr + ' and isnull(stkName,'''')=''' + Trim(FstkName) + '''';
|
||
|
||
if Trim(canshu4) <> '' then
|
||
SqlStr := SqlStr + ' and isnull(StkCoName,'''')=''' + Trim(canshu4) + '''';
|
||
WSqlStr := CommonFiltersByTv(Tv2, '{"RemovalNull":true,"Fields":"C_Code|C_Name|C_Color|C_ColorNo|C_Pattern|C_Degree|QtyUnit"}');
|
||
if TRIM(WSqlStr) <> '' then
|
||
SqlStr := SqlStr + ' and ' + WSqlStr;
|
||
SqlStr := SqlStr + ' order by IOTime desc';
|
||
|
||
InitCDSData(ADO_1, CDS_1, Tv1, SqlStr, SGetFilters(Panel1, 1, 2), 'BCIOID');
|
||
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.TBRafreshClick(Sender: TObject);
|
||
begin
|
||
InitGrid2();
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.TBCloseClick(Sender: TObject);
|
||
begin
|
||
|
||
Close;
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.FormShow(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
|
||
ReadCxGrid(trim(Self.Caption) + 'Tv1', Tv1, 'ó<><EFBFBD><D7BB>ֿܲ<DCB2>');
|
||
ReadCxGrid(trim(Self.Caption) + 'Tv2', Tv2, 'ó<><EFBFBD><D7BB>ֿܲ<DCB2>');
|
||
canshu4 := Trim(self.fParameters4);
|
||
InitGrid2();
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.FromCoNameKeyPress(Sender: TObject; var Key: Char);
|
||
begin
|
||
if Key = #13 then
|
||
TBFind.Click;
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.FromCoNamePropertiesChange(Sender: TObject);
|
||
begin
|
||
if Length(Trim(TcxTextEdit(Sender).Text)) < 4 then
|
||
Exit;
|
||
TBFind.Click;
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.TBFindClick(Sender: TObject);
|
||
begin
|
||
case cxPageControl1.ActivePageIndex of
|
||
0:
|
||
begin
|
||
CDSDataFilter(ADO_2, CDS_2, Tv2, '{"FilterStr":"' + CommonFiltersByContainer(Panel1, ' {"EquTag": 1,"LikeTag": 2,"Fields": "C_name|C_Color|C_ColorNo"}') + '" }');
|
||
end;
|
||
1:
|
||
begin
|
||
CDSDataFilter(ADO_1, CDS_1, Tv1, '{"FilterStr":"' + CommonFiltersByContainer(Panel1, ' {"EquTag": 1,"LikeTag": 2,"Fields": ""}') + '" }');
|
||
end;
|
||
end;
|
||
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.MPRTCodeNameChange(Sender: TObject);
|
||
begin
|
||
TBFind.Click;
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.N1Click(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
SelOKNo(CDS_1, True);
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.N2Click(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
SelOKNo(CDS_1, False);
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.ToolButton2Click(Sender: TObject);
|
||
begin
|
||
WriteCxGrid(trim(Self.Caption) + 'Tv1', Tv1, 'ó<><EFBFBD><D7BB>ֿܲ<DCB2>');
|
||
WriteCxGrid(trim(Self.Caption) + 'Tv2', Tv2, 'ó<><EFBFBD><D7BB>ֿܲ<DCB2>');
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.ToolButton3Click(Sender: TObject);
|
||
begin
|
||
if CDS_1.Locate('SSel', True, []) = False then
|
||
begin
|
||
Application.MessageBox('û<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
|
||
Exit;
|
||
end;
|
||
try
|
||
frmLabelPrint := TfrmLabelPrint.Create(Application);
|
||
with frmLabelPrint do
|
||
begin
|
||
FLMType := 'TradeLabVolume1';
|
||
FFiltration1 := Trim(SelCDSKey(self.CDS_1, ['BCIOID'])[0]);
|
||
if ShowModal = 1 then
|
||
begin
|
||
|
||
end;
|
||
end;
|
||
finally
|
||
frmLabelPrint.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
|
||
begin
|
||
ModalResult := 1;
|
||
end;
|
||
|
||
procedure TfrmTradeClothTotalStkList.TV2DblClick(Sender: TObject);
|
||
begin
|
||
cxPageControl1.ActivePageIndex := 1;
|
||
|
||
end;
|
||
|
||
end.
|
||
|