D7lmSanshui/坯布汇总仓库(ClothWarehouse.dll)/U_PBRkCKlist.pas

347 lines
10 KiB
ObjectPascal
Raw Permalink Normal View History

2024-07-11 10:06:42 +08:00
unit U_PBRkCKlist;
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, cxContainer,
cxTextEdit, cxCurrencyEdit, cxCheckBox, RM_System, RM_Dataset, RM_Common,
RM_Class, RM_GridReport, cxPC, Menus, cxLookAndFeels, cxLookAndFeelPainters,
cxNavigator;
type
TfrmPBRkCKlist = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBExport: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
Label1: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1P_CodeName: TcxGridDBColumn;
v1Note: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1CRType: TcxGridDBColumn;
v1CRTime: TcxGridDBColumn;
Label2: TLabel;
Label3: TLabel;
CodeName: TEdit;
CRType: TComboBox;
Label5: TLabel;
ADOQueryCmd: TADOQuery;
ADOQueryTmp: TADOQuery;
DataSource1: TDataSource;
CDS_Main: TClientDataSet;
cxGridPopupMenu1: TcxGridPopupMenu;
ckName: TComboBox;
Label6: TLabel;
v1P_Code: TcxGridDBColumn;
VC_CRID: TcxGridDBColumn;
Label7: TLabel;
CRNo: TEdit;
v1Price: TcxGridDBColumn;
v1money: TcxGridDBColumn;
gangNo: TEdit;
Label10: TLabel;
RMDB_Main: TRMDBDataSet;
ADOQueryPrint: TADOQuery;
RM1: TRMGridReport;
v1Column10: TcxGridDBColumn;
Label17: TLabel;
fromFactoryName: TEdit;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
ADOQueryMain: TADOQuery;
VC_PS: TcxGridDBColumn;
Label4: TLabel;
kuwei: TEdit;
v1Column7: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
VC_LLKCPS: TcxGridDBColumn;
VC_CRNO: TcxGridDBColumn;
CDS_KC: TClientDataSet;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure CodeNameChange(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure VC_CRIDCompareRowValuesForCellMerging(Sender: TcxGridColumn; ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; const AValue1: Variant; ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; const AValue2: Variant; var AAreEqual: Boolean);
procedure VC_CRNOCompareRowValuesForCellMerging(Sender: TcxGridColumn; ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; const AValue1: Variant; ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; const AValue2: Variant; var AAreEqual: Boolean);
procedure CDS_MainBeforeOpen(DataSet: TDataSet);
procedure Tv1DataControllerFilterBeforeChange(Sender: TcxDBDataFilterCriteria; ADataSet: TDataSet; const AFilterText: string);
procedure Tv1DataControllerSummaryFooterSummaryItemsSummary(ASender: TcxDataSummaryItems; Arguments: TcxSummaryEventArguments; var OutArguments: TcxSummaryEventOutArguments);
procedure Tv1TcxGridDBDataControllerTcxDataSummaryFooterSummaryItems4GetText(Sender: TcxDataSummaryItem; const AValue: Variant; AIsFooter: Boolean; var AText: string);
procedure Tv1TcxGridDBDataControllerTcxDataSummaryFooterSummaryItems7GetText(Sender: TcxDataSummaryItem; const AValue: Variant; AIsFooter: Boolean; var AText: string);
private
procedure InitGrid();
procedure SetStatus();
{ Private declarations }
public
fCKName, canshu1: string;
fCRType, FZZType: string;
FRKPS, FKCPS: Integer;
{ Public declarations }
end;
//var
// frmPBRklist: TfrmPBRklist;
implementation
uses
U_DataLink, U_Fun10, U_ZDYHelp, U_PBRk, U_FjList_RZ;
{$R *.dfm}
procedure TfrmPBRkCKlist.SetStatus();
begin
// TBEdit.Visible:=False;
// ToolButton1.Visible:=False;
// TBDel.Visible:=False;
// TBPrint2.Visible:=False;
// TBPrint1.Visible:=False;
// ToolButton2.Visible:=False;
// ToolButton3.Visible:=False;
// if Trim(DParameters2)='<27><>Ȩ<EFBFBD><C8A8>' then
// begin
// case cxTabControl1.TabIndex of
// 0:begin
// TBEdit.Visible:=true;
// ToolButton1.Visible:=true;
// TBDel.Visible:=true;
// ToolButton2.Visible:=true;
// TBPrint1.Visible:=true;
// end;
// 1:begin
// TBPrint2.Visible:=true;
// TBPrint1.Visible:=true;
// ToolButton3.Visible:=true;
// end;
// 2:begin
//
// end;
// end
// end
// else
// begin
// case cxTabControl1.TabIndex of
// 0:begin
// TBEdit.Visible:=true;
// ToolButton1.Visible:=true;
// TBDel.Visible:=true;
// TBPrint1.Visible:=true;
// end;
// 1:begin
// TBPrint2.Visible:=true;
// TBPrint1.Visible:=true;
// end;
// 2:begin
//
// end;
// end
// end;
end;
procedure TfrmPBRkCKlist.InitGrid();
begin
try
with ADOQueryMain do
begin
close;
sql.Clear;
sql.Add(' exec P_View_PBCHB ');
sql.Add('@Begdate=''' + formatdateTime('yyyy-MM-dd', begdate.Date) + ''' ');
sql.Add(',@enddate=''' + formatdateTime('yyyy-MM-dd', enddate.Date + 1) + ''' ');
open;
end;
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
TBFind.Click;
finally
end;
end;
procedure TfrmPBRkCKlist.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := cafree;
end;
procedure TfrmPBRkCKlist.FormDestroy(Sender: TObject);
begin
// frmPBRklist:=nil;
end;
procedure TfrmPBRkCKlist.CodeNameChange(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
end;
procedure TfrmPBRkCKlist.FormShow(Sender: TObject);
begin
readCxGrid(self.Caption, Tv1, '<27><><EFBFBD>ϲֿ<CFB2>');
SetStatus();
CDS_KC.FieldDefs.Clear;
CDS_KC.FieldDefs.Add('CRID', ftString, 60);
CDS_KC.FieldDefs.Add('RKPS', ftInteger, 0);
CDS_KC.FieldDefs.Add('KCPS', ftInteger, 0);
CDS_KC.Close;
CDS_KC.CreateDataSet;
// InitGrid();
end;
procedure TfrmPBRkCKlist.FormCreate(Sender: TObject);
begin
EndDate.Date := SGetServerDate10(ADOQueryTmp);
BegDate.Date := EndDate.Date - 7;
cxGrid1.Align := alclient;
end;
procedure TfrmPBRkCKlist.TBCloseClick(Sender: TObject);
begin
writeCxGrid(self.Caption, Tv1, '<27><><EFBFBD>ϲֿ<CFB2>');
close;
end;
procedure TfrmPBRkCKlist.TBRafreshClick(Sender: TObject);
begin
initGrid();
end;
procedure TfrmPBRkCKlist.TBExportClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
TcxGridToExcel(self.Caption, cxgrid1);
end;
procedure TfrmPBRkCKlist.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
end;
procedure TfrmPBRkCKlist.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main, True);
end;
procedure TfrmPBRkCKlist.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main, False);
end;
procedure TfrmPBRkCKlist.VC_CRIDCompareRowValuesForCellMerging(Sender: TcxGridColumn; ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; const AValue1: Variant; ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; const AValue2: Variant; var AAreEqual: Boolean);
begin
if ARow1.Values[VC_CRID.Index] = ARow2.Values[VC_CRID.Index] then
AAreEqual := True
else
AAreEqual := False;
end;
procedure TfrmPBRkCKlist.VC_CRNOCompareRowValuesForCellMerging(Sender: TcxGridColumn; ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; const AValue1: Variant; ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; const AValue2: Variant; var AAreEqual: Boolean);
begin
if ARow1.Values[VC_CRNO.Index] = ARow2.Values[VC_CRNO.Index] then
AAreEqual := True
else
AAreEqual := False;
end;
procedure TfrmPBRkCKlist.CDS_MainBeforeOpen(DataSet: TDataSet);
begin
CDS_KC.EmptyDataSet;
end;
procedure TfrmPBRkCKlist.Tv1DataControllerFilterBeforeChange(Sender: TcxDBDataFilterCriteria; ADataSet: TDataSet; const AFilterText: string);
begin
CDS_KC.EmptyDataSet;
end;
procedure TfrmPBRkCKlist.Tv1DataControllerSummaryFooterSummaryItemsSummary(ASender: TcxDataSummaryItems; Arguments: TcxSummaryEventArguments; var OutArguments: TcxSummaryEventOutArguments);
var
MCRID: string;
begin
MCRID := vartostr(ASender.DataController.Values[Arguments.RecordIndex, VC_CRID.Index]);
if TcxGridDBTableSummaryItem(Arguments.SummaryItem).Column = VC_PS then
begin
if not CDS_KC.Locate('CRID', MCRID, []) then
begin
with CDS_KC do
begin
Append;
FieldByName('RKPS').Value := StrToIntDef(vartostr(ASender.DataController.Values[Arguments.RecordIndex, VC_PS.Index]), 0);
FieldByName('KCPS').Value := StrToIntDef(vartostr(ASender.DataController.Values[Arguments.RecordIndex, VC_LLKCPS.Index]), 0);
Post;
end;
end;
end;
end;
procedure TfrmPBRkCKlist.Tv1TcxGridDBDataControllerTcxDataSummaryFooterSummaryItems4GetText(Sender: TcxDataSummaryItem; const AValue: Variant; AIsFooter: Boolean; var AText: string);
var
MPS: Integer;
begin
MPS := 0;
if CDS_KC.IsEmpty then
Exit;
with CDS_KC do
begin
First;
while not eof do
begin
MPS := MPS + FieldByName('RKPS').AsInteger;
Next;
end;
end;
AText := IntToStr(MPS);
end;
procedure TfrmPBRkCKlist.Tv1TcxGridDBDataControllerTcxDataSummaryFooterSummaryItems7GetText(Sender: TcxDataSummaryItem; const AValue: Variant; AIsFooter: Boolean; var AText: string);
var
MPS: Integer;
begin
MPS := 0;
if CDS_KC.IsEmpty then
Exit;
with CDS_KC do
begin
First;
while not eof do
begin
if FieldByName('KCPS').AsInteger > 0 then
MPS := MPS + FieldByName('KCPS').AsInteger;
Next;
end;
end;
AText := IntToStr(MPS);
end;
end.