D10SZKaiXiYa/B03基础物料仓库/U_BSPrtDyeEJStkList.pas
DESKTOP-E401PHE\Administrator 53e8f4820d 11
2025-03-01 10:55:52 +08:00

210 lines
5.9 KiB
ObjectPascal
Raw Permalink 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_BSPrtDyeEJStkList;
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,
cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseList,
dxScrollbarAnnotations, cxContainer, dxSkinsCore, dxSkinsDefaultPainters,
cxProgressBar, dxSkinWXI;
type
TfrmBSPrtDyeEJStkList = class(TfrmBaseList)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
CDS_Main: TClientDataSet;
CDS_HZ: TClientDataSet;
PopupMenu1: TPopupMenu;
ToolButton1: TToolButton;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v2Column1: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
Label3: TLabel;
Label8: TLabel;
Label2: TLabel;
P_name: TcxTextEdit;
P_spec: TcxTextEdit;
BatchNo: TcxTextEdit;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
Tv1Column3: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
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 ToolButton3Click(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
canshu1, FSTKName, canshu3: string;
{ Public declarations }
end;
var
frmBSPrtDyeEJStkList: TfrmBSPrtDyeEJStkList;
implementation
uses
U_DataLink, U_RTFun;
{$R *.dfm}
procedure TfrmBSPrtDyeEJStkList.FormDestroy(Sender: TObject);
begin
inherited;
frmBSPrtDyeejStkList := nil;
end;
procedure TfrmBSPrtDyeEJStkList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
procedure TfrmBSPrtDyeEJStkList.FormCreate(Sender: TObject);
begin
inherited;
canshu1 := Trim(self.fParameters1);
FSTKName := Trim(self.fParameters2);
canshu3 := Trim(self.fParameters3);
end;
procedure TfrmBSPrtDyeEJStkList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add(' select P_Code,P_Name,P_Spec,BatchNo,SUM(IOQtyFlag*Qty)StkQty,SUM(IOQtyFlag*Qty/1000)StkQtyKG,money=sum(IOQtyFlag*price*Qty) ');
SQL.Add(' ,p_type=(select p_type from Bs_Product_Info e where e.C_SCcode=a.p_code)');
sql.Add(' from BS_Product_IO A ');
// SQL.Add(' where A.IOFlag=''<27><><EFBFBD><EFBFBD>'' and isnull(StkQty,0)>0 ');
sql.Add(' where isnull(stkName,'''')=''' + Trim(FstkName) + '''');
SQL.Add('GROUP BY P_Code,P_Name,P_Spec,BatchNo');
sql.add('having sum(IOQtyFlag*Qty)>0');
Open;
end;
SCreateCDS(ADOQueryMain, CDS_Main);
SInitCDSData(ADOQueryMain, CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmBSPrtDyeEJStkList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmBSPrtDyeEJStkList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmBSPrtDyeEJStkList.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmBSPrtDyeEJStkList.FormShow(Sender: TObject);
begin
inherited;
ReadCxGrid(trim(Self.Caption), Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD>ϲֿ<CFB2>');
InitGrid();
end;
procedure TfrmBSPrtDyeEJStkList.TBFindClick(Sender: TObject);
begin
CDSDataFilter(ADOQueryMain, CDS_Main, Tv1, '{"FilterStr":"' + CommonFiltersByContainer(Panel1, ' {"EquTag": 1,"LikeTag": 2,"Fields": ""}') + '" }');
end;
procedure TfrmBSPrtDyeEJStkList.MPRTCodeNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmBSPrtDyeEJStkList.SXBatchNOChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmBSPrtDyeEJStkList.FromCoNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmBSPrtDyeEJStkList.ToolButton1Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
if CDS_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
ModalResult := 1;
end;
procedure TfrmBSPrtDyeEJStkList.ToolButton2Click(Sender: TObject);
begin
WriteCxGrid(trim(Self.Caption), Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD>ϲֿ<CFB2>');
end;
procedure TfrmBSPrtDyeEJStkList.ToolButton3Click(Sender: TObject);
begin
inherited;
if ADOQueryMain.IsEmpty then
exit;
TcxGridToExcel(trim(self.Caption), cxGrid2);
end;
procedure TfrmBSPrtDyeEJStkList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
ModalResult := 1;
end;
end.