D7YPbaoying/样品仓库/U_Bpkcsumlist.pas
DESKTOP-E401PHE\Administrator e505f1d7a5 ~
2025-04-30 16:02:03 +08:00

305 lines
7.4 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_Bpkcsumlist;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData,
cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxClasses, cxControls,
cxGridCustomView, cxGrid, DBClient, ADODB, cxGridCustomPopupMenu,
cxGridPopupMenu, cxCheckBox;
type
TfrmBpkcsumlist = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBExport: TToolButton;
TBPrint: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
Label1: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1P_CodeName: TcxGridDBColumn;
v1P_SPEC: TcxGridDBColumn;
v1P_MF: TcxGridDBColumn;
v1P_KZ: TcxGridDBColumn;
v1RollNum: TcxGridDBColumn;
v1Qty: TcxGridDBColumn;
v1QtyUnit: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
P_Code: TEdit;
P_spec: TEdit;
CRType: TComboBox;
Label5: TLabel;
ADOQueryCmd: TADOQuery;
ADOQueryTmp: TADOQuery;
DataSource1: TDataSource;
CDS_Main: TClientDataSet;
cxGridPopupMenu1: TcxGridPopupMenu;
TOk: TToolButton;
v1Ssel: TcxGridDBColumn;
CheckBox1: TCheckBox;
ckName: TComboBox;
Label6: TLabel;
v1Column1: TcxGridDBColumn;
v1P_Code: TcxGridDBColumn;
P_CodeName: TEdit;
Label7: TLabel;
kuwei: TEdit;
Label8: TLabel;
v1Column3: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
Label9: TLabel;
Edit1: TEdit;
Label10: TLabel;
v1factoryName: TcxGridDBColumn;
v1defnote5: TcxGridDBColumn;
CheckBox2: TCheckBox;
v1kuwei: TcxGridDBColumn;
ToolButton1: TToolButton;
P_Color: TEdit;
Label11: TLabel;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure P_CodeChange(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure TBPrintClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TOkClick(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
procedure CheckBox2Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
private
procedure InitGrid();
procedure SetComboBox();
{ Private declarations }
public
fType:integer;
fCKName:string;
canshu2:string;
{ Public declarations }
end;
var
frmBpkcsumlist: TfrmBpkcsumlist;
implementation
uses
U_DataLink,U_Fun10,U_ZDYHelp, U_BpRk;
{$R *.dfm}
procedure TfrmBpkcsumlist.SetComboBox();
begin
ckName.Items.Clear;
with adoQueryTmp do
begin
close;
sql.Clear;
sql.Add('select * from KH_ZDY where Type=''YPCK'' ');
if trim(fCKName)<>'' then
sql.Add('and zdyName='+quotedstr(trim(fCKName)));
open;
while not eof do
begin
ckName.Items.Add(trim(fieldbyname('zdyName').AsString));
next;
end;
end;
if ckName.Items.Count>0 then ckName.ItemIndex:=0;
CRType.Items.Clear;
CRType.Items.Add('');
with adoQueryTmp do
begin
close;
sql.Clear;
sql.Add('select * from KH_ZDY where Type=''YPRKTYPE''');
if trim(fCKName)<>'' then
sql.Add('and note='+quotedstr(trim(fCKName)));
open;
while not eof do
begin
CRType.Items.Add(trim(fieldbyname('zdyName').AsString));
next;
end;
end;
if CRType.Items.Count>0 then CRType.ItemIndex:=0;
with adoqueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from KH_Zdy where Type=''YPKCJYFLAG''');
open;
IF not IsEmpty then
Edit1.Text:=trim(fieldbyname('zdyName').AsString);
end;
end;
procedure TfrmBpkcsumlist.InitGrid();
begin
try
with adoqueryTmp do
begin
close;
sql.Clear;
sql.Add('exec P_View_YpKc ');
sql.Add('@begdate='''+formatdateTime('yyyy-MM-dd',begdate.DateTime)+'''');
sql.Add(',@enddate='''+formatdateTime('yyyy-MM-dd',enddate.DateTime+1)+'''');
if CheckBox1.Checked then
sql.Add(',@iskc=''1'' ')
else
sql.Add(',@iskc=''0'' ');
IF CheckBox2. Checked then
sql.Add(',@isyj=''1'' ')
else
sql.Add(',@isyj=''0'' ');
sql.Add(',@yjNum='''+trim(Edit1.text)+''' ');
open;
end;
SCreateCDS20(adoqueryTmp,CDS_Main);
SInitCDSData20(adoqueryTmp,CDS_Main);
finally
end;
end;
procedure TfrmBpkcsumlist.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
writeCxGrid(self.Caption,Tv1,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
if fType=10 then Action:=cahide
else Action:=cafree;
end;
procedure TfrmBpkcsumlist.FormDestroy(Sender: TObject);
begin
frmBpkcsumlist:=nil;
end;
procedure TfrmBpkcsumlist.P_CodeChange(Sender: TObject);
begin
if ADOQueryTmp.Active=False then Exit;
SDofilter(ADOQueryTmp,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryTmp,CDS_Main);
SInitCDSData20(ADOQueryTmp,CDS_Main);
end;
procedure TfrmBpkcsumlist.FormShow(Sender: TObject);
begin
readCxGrid(self.Caption,Tv1,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
if fType=10 then
begin
TOk.Visible:=true;
v1Ssel.Visible:=true;
end;
IF canshu2=<><D2B5>Ա'then
begin
v1factoryName.Visible:=false;
v1factoryName.Hidden:=true;
end
else
begin
v1factoryName.Visible:=true;
v1factoryName.Hidden:=false;
end;
SetComboBox();
InitGrid();
end;
procedure TfrmBpkcsumlist.FormCreate(Sender: TObject);
begin
BegDate.Date:=DServerDate-7;
EndDate.Date:=DServerDate;
cxGrid1.Align:=alclient;
end;
procedure TfrmBpkcsumlist.TBCloseClick(Sender: TObject);
begin
close;
end;
procedure TfrmBpkcsumlist.TBRafreshClick(Sender: TObject);
begin
initGrid();
end;
procedure TfrmBpkcsumlist.TBPrintClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then Exit;
TcxGridToExcel(self.Caption,cxgrid1);
end;
procedure TfrmBpkcsumlist.TBExportClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then Exit;
TcxGridToExcel(self.Caption,cxgrid1);
end;
procedure TfrmBpkcsumlist.TOkClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then Exit;
ModalResult:=1;
end;
procedure TfrmBpkcsumlist.CheckBox1Click(Sender: TObject);
begin
initgrid();
end;
procedure TfrmBpkcsumlist.Tv1CustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
begin
IF AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('kcQty').Index]<strtofloatdef(trim(edit1.Text),0) then
ACanvas.Brush.Color:=clred;
end;
procedure TfrmBpkcsumlist.CheckBox2Click(Sender: TObject);
begin
initgrid();
end;
procedure TfrmBpkcsumlist.ToolButton1Click(Sender: TObject);
begin
frmZDYHelp:=TfrmZDYHelp.Create(self);
with frmZDYHelp do
begin
flag:='YPKCJYFLAG';
caption:='<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
V1Name.Caption:=<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
showmodal;
free;
end;
with adoqueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from KH_Zdy where Type=''YPKCJYFLAG''');
open;
IF not IsEmpty then
Edit1.Text:=trim(fieldbyname('zdyName').AsString);
end;
TBRafresh.Click;
end;
end.