D7zzHanglin/机物料仓库(GYJWLCK.dll)/U_ShaKCListJWL.pas

218 lines
5.5 KiB
ObjectPascal
Raw Permalink Normal View History

2025-08-06 16:42:07 +08:00
unit U_ShaKCListJWL;
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,Clipbrd;
type
TfrmShaKCListJWL = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBClose: TToolButton;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
CDS_Main: TClientDataSet;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column6: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column15: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
ToolButton2: TToolButton;
v1Column17: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column20: TcxGridDBColumn;
v1Column21: TcxGridDBColumn;
v1Column23: TcxGridDBColumn;
Panel1: TPanel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label8: TLabel;
Label12: TLabel;
Label2: TLabel;
Label9: TLabel;
SPName: TEdit;
FactoryName: TEdit;
SPID: TEdit;
SPSpec: TEdit;
CRType: TComboBox;
BatchNo: TEdit;
SXPinPai: TEdit;
Label1: TLabel;
QtyUnit: TEdit;
CheckBox1: TCheckBox;
v1Column7: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
Label6: TLabel;
Note: TEdit;
v1Column11: TcxGridDBColumn;
Label7: TLabel;
KuWei: TEdit;
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 N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure SXBatchNOChange(Sender: TObject);
procedure FactoryNameChange(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure Tv1DblClick(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
FDYFlag:String;
{ Public declarations }
end;
var
frmShaKCListJWL: TfrmShaKCListJWL;
implementation
uses
U_DataLink,U_RTFun;
{$R *.dfm}
procedure TfrmShaKCListJWL.FormDestroy(Sender: TObject);
begin
frmShaKCListJWL:=nil;
end;
procedure TfrmShaKCListJWL.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmShaKCListJWL.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add(' select A.* ,CKQty=isnull(Qty,0)-isnull(MXKCQty,0),CKPiQty=isnull(PiQty,0)-isnull(MXKCPiQty,0)');
sql.Add(' ,JSMoney=price*Qty ');
sql.Add(' from CK_SXPB_CR A where isnull(CKName,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
SQL.Add(' and A.CRFlag=''<27><><EFBFBD><EFBFBD>'' and ZFFlag=0 ');
if CheckBox1.Checked=false then
begin
SQL.Add(' and MXKCQty>0 ');
end;
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmShaKCListJWL.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmShaKCListJWL.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
end;
end;
procedure TfrmShaKCListJWL.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD>б<EFBFBD>',Tv1,'<27><><EFBFBD><EFBFBD><EFBFBD>ϲֿ<CFB2>');
Close;
end;
procedure TfrmShaKCListJWL.FormShow(Sender: TObject);
begin
ReadCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD>б<EFBFBD>',Tv1,'<27><><EFBFBD><EFBFBD><EFBFBD>ϲֿ<CFB2>');
if FDYFlag='99' then
begin
InitGrid();
TBFind.Click;
end;
end;
procedure TfrmShaKCListJWL.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
end;
end;
procedure TfrmShaKCListJWL.MPRTCodeNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmShaKCListJWL.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main,True);
end;
procedure TfrmShaKCListJWL.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main,False);
end;
procedure TfrmShaKCListJWL.SXBatchNOChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmShaKCListJWL.FactoryNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmShaKCListJWL.ToolButton2Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then exit;
TcxGridToExcel('<27><><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD>б<EFBFBD>',cxGrid2);
end;
procedure TfrmShaKCListJWL.Tv1DblClick(Sender: TObject);
begin
Clipboard.SetTextBuf(PChar(Trim(CDS_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString)));
end;
end.