D10myYicheng/成品仓库(FinishedClothWarehouse.dll)/U_CKProductCPKCHXList.pas

1132 lines
29 KiB
ObjectPascal
Raw Permalink Normal View History

2025-05-27 14:08:09 +08:00
unit U_CKProductCPKCHXList;
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, MovePanel, cxCheckBox, Menus, cxCalendar, RM_Common, RM_Class,
RM_GridReport, RM_System, RM_Dataset, BtnEdit, Math, Clipbrd, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator, RM_e_Xls, U_BaseList, dxSkinsCore,
dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, cxTextEdit, cxPC;
type
TfrmXGSZList = class(TfrmBaseList)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DS_1: TDataSource;
GPM_1: TcxGridPopupMenu;
CDS_Main: TClientDataSet;
MovePanel2: TMovePanel;
ThreeColorBase: TcxStyleRepository;
SHuangSe: TcxStyle;
SkyBlue: TcxStyle;
Default: TcxStyle;
QHuangSe: TcxStyle;
Red: TcxStyle;
FontBlue: TcxStyle;
TextSHuangSe: TcxStyle;
FonePurple: TcxStyle;
FoneClMaroon: TcxStyle;
FoneRed: TcxStyle;
RowColor: TcxStyle;
handBlack: TcxStyle;
cxBlue: TcxStyle;
RMDB_Main: TRMDBDataSet;
ADOQueryPrint: TADOQuery;
RM1: TRMGridReport;
CDS_HZ: TClientDataSet;
CDS_PRT: TClientDataSet;
RMDBHZ: TRMDBDataSet;
RMDBPRT: TRMDBDataSet;
Panel1: TPanel;
CDS_Label: TClientDataSet;
RMXLSExport1: TRMXLSExport;
DS_2: TDataSource;
CDS_2: TClientDataSet;
GPM_2: TcxGridPopupMenu;
Label5: TLabel;
Label11: TLabel;
orderNo: TEdit;
P_HX: TEdit;
cxPageControl1: TcxPageControl;
cxTabSheet1: TcxTabSheet;
cxTabSheet2: TcxTabSheet;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column4: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
Panel4: TPanel;
Label20: TLabel;
Panel10: TPanel;
Image2: TImage;
Button1: TButton;
RadioGroup1: TRadioGroup;
Tv1Column2: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
cxGrid2: TcxGrid;
TV2: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
TV2Column1: TcxGridDBColumn;
TV2Column2: TcxGridDBColumn;
TV2Column3: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
TV2Column4: TcxGridDBColumn;
TV2Column5: TcxGridDBColumn;
Tv1Column6: TcxGridDBColumn;
YWC: TCheckBox;
cxGrid3: TcxGrid;
TV3: TcxGridDBTableView;
cxGridDBColumn5: TcxGridDBColumn;
cxGridDBColumn6: TcxGridDBColumn;
cxGridDBColumn7: TcxGridDBColumn;
cxGridDBColumn8: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
CDS_BS1: TClientDataSet;
DS_BS1: TDataSource;
TV3Column1: TcxGridDBColumn;
TV3Column2: TcxGridDBColumn;
TV3Column3: TcxGridDBColumn;
TV3Column4: TcxGridDBColumn;
ADOQuery1: TADOQuery;
Edit1: TEdit;
Button2: TButton;
Edit2: TEdit;
Button3: TButton;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
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 TBExportClick(Sender: TObject);
procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure BTNPClick(Sender: TObject);
procedure BTLPClick(Sender: TObject);
procedure TCBNORChange(Sender: TObject);
procedure MPRTCodeNameKeyPress(Sender: TObject; var Key: Char);
procedure CPTypeKeyPress(Sender: TObject; var Key: Char);
procedure TV2DblClick(Sender: TObject);
procedure cxPageControl1Change(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TextEdit(Sender: TObject);
procedure Tv1Column3PropertiesEditValueChanged(Sender: TObject);
procedure TV2Column1PropertiesEditValueChanged(Sender: TObject);
procedure cxGridDBColumn4PropertiesEditValueChanged(Sender: TObject);
procedure P_HXKeyPress(Sender: TObject; var Key: Char);
procedure orderNoKeyPress(Sender: TObject; var Key: Char);
procedure TV2Column4PropertiesEditValueChanged(Sender: TObject);
procedure TV2Column4PropertiesChange(Sender: TObject);
procedure Tv1Column5PropertiesEditValueChanged(Sender: TObject);
procedure Tv1Column6PropertiesEditValueChanged(Sender: TObject);
procedure YWCClick(Sender: TObject);
procedure TV2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
procedure TV3Column1PropertiesChange(Sender: TObject);
procedure cxGridDBColumn8PropertiesChange(Sender: TObject);
procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject);
procedure TV3Column1PropertiesEditValueChanged(Sender: TObject);
procedure TV2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
FLeft, FTop: Integer;
CurrentPage, RecordsNumber: Integer;
procedure InitGrid();
procedure HJJE();
{ Private declarations }
public
issel: integer;
CANSHU2: string;
{ Public declarations }
end;
var
frmXGSZList: TfrmXGSZList;
implementation
uses
U_DataLink, U_RTFun, U_ZDYHelp, U_ProductOrderListSel, U_LbaelMap;
{$R *.dfm}
procedure TfrmXGSZList.HJJE();
var
FZXG1, FZZL1, FZBS1: double;
begin
if TV3.DataController.Summary.FooterSummaryValues[1] <> NULL then
FZXG1 := TV3.DataController.Summary.FooterSummaryValues[1]
else
FZXG1 := 0;
if TV3.DataController.Summary.FooterSummaryValues[0] <> NULL then
FZZL1 := TV3.DataController.Summary.FooterSummaryValues[0]
else
FZZL1 := 0;
if TV3.DataController.Summary.FooterSummaryValues[2] <> NULL then
FZBS1 := TV3.DataController.Summary.FooterSummaryValues[2]
else
FZBS1 := 0;
if FZBS1 <> 0 then
begin
with CDS_2 do
begin
Edit;
CDS_2.FieldByName('XG').asstring := floattostr(FZXG1 / FZBS1);
CDS_2.FieldByName('DBZL').asstring := floattostr(FZZL1 / FZBS1);
Post;
end;
tv2.Controller.EditingController.ShowEdit();
end;
end;
procedure TfrmXGSZList.FormDestroy(Sender: TObject);
begin
inherited;
frmXGSZList := nil;
end;
procedure TfrmXGSZList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
procedure TfrmXGSZList.FormCreate(Sender: TObject);
begin
inherited;
canshu2 := Trim(Self.fParameters2);
end;
procedure TfrmXGSZList.InitGrid();
var
WSql: string;
begin
MovePanel2.Left := (self.Width - MovePanel2.Width) div 2;
MovePanel2.Visible := True;
MovePanel2.Refresh;
WSql := SGetFilters(Panel1, 1, 2);
if Trim(WSql) <> '' then
WSql := ' and ' + WSql;
try
ADOQueryMain.DisableControls;
case cxPageControl1.ActivePageIndex of
0:
begin
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add('select distinct P_HX,ORDERNO,P_CODENAME,CHECK2=CAST((CASE WHEN 1=2 THEN 1 ELSE 0 END )AS BIT),XG=0.00,chang=0.00,KUAN=0.00,GAO=0.00,dbzl=0.00 FROM CK_CLOTH_CR A');
SQL.Add('WHERE NOT EXISTS(SELECT XGID FROM ORDER_XG B WHERE B.ORDERNO=A.ORDERNO AND A.P_HX=B.P_HX)' + (WSql));
sql.Add('and not EXISTS(select status from jyorder_main c where c.mainid=a.mainid and c.status=''2'')');
sql.Add('and exists(select jyid from jy_cloth E WHERE E.JYID=A.JYID AND E.fdanwei= ' + QuotedStr(Trim(canshu2)));
sql.Add(')');
SQL.Add('ORDER BY orderno,p_hx');
// ShowMessage(SQL.Text);
Open;
end;
SCreateCDS(ADOQueryMain, CDS_2);
SInitCDSData(ADOQueryMain, CDS_2);
end;
1:
begin
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add('select * FROM ORDER_XG A');
sql.Add('where 1=1 ' + (WSql));
// if YWC.Checked = FALSE then
// begin
// SQL.Add('AND ISNULL(XG,0)=0 OR ISNULL(DBZL,0)=0');
// end;
sql.Add('and not EXISTS(select status from jyorder_main c where c.orderno=a.orderno and c.status=''2'')');
sql.Add('and exists(select * from jyorder_main E WHERE E.ORDERNO=A.ORDERNO AND ISNULL(E.danwei,''<27><>'')= ' + QuotedStr(Trim(canshu2)));
sql.Add(')');
SQL.Add('ORDER BY orderno,p_hx');
Open;
end;
SCreateCDS(ADOQueryMain, CDS_Main);
SInitCDSData(ADOQueryMain, CDS_Main);
end;
end;
MovePanel2.Visible := false;
finally
ADOQueryMain.EnableControls;
MovePanel2.Visible := false;
end;
end;
procedure TfrmXGSZList.TBRafreshClick(Sender: TObject);
begin
CurrentPage := 1;
InitGrid();
end;
procedure TfrmXGSZList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmXGSZList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(trim(self.Caption) + '1Tv2', Tv2, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>2');
WriteCxGrid(trim(self.Caption) + 'Tv1', Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
Close;
end;
procedure TfrmXGSZList.FormShow(Sender: TObject);
begin
inherited;
CurrentPage := 1;
RecordsNumber := 500;
ReadCxGrid(trim(self.Caption) + '1Tv2', Tv2, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>2');
ReadCxGrid(trim(self.Caption) + 'Tv1', Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
end;
procedure TfrmXGSZList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
TcxGridToExcel('<27><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', cxGrid2);
end;
procedure TfrmXGSZList.Tv1Column3PropertiesEditValueChanged(Sender: TObject);
var
mvalues, FFieldName: string;
begin
inherited;
mvalues := TCXTextEdit(Sender).Text;
FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
if trim(mvalues) = '' then
begin
mvalues := '0';
end;
with CDS_main do
begin
edit;
fieldbyname(FFieldName).Value := mvalues;
post;
end;
tv1.Controller.EditingController.ShowEdit();
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update order_xg ');
SQL.Add(' Set ' + FFieldName + '=' + mvalues);
sql.Add(' where xgid=''' + Trim(CDS_main.fieldbyname('xgid').AsString) + '''');
ExecSQL;
end;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmXGSZList.Tv1Column5PropertiesEditValueChanged(Sender: TObject);
var
mvalues, FFieldName: string;
FCHANG, FKUAN, FGAO, FXG: Double;
begin
inherited;
mvalues := TCXTextEdit(Sender).Text;
FFieldName := Trim(tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
if trim(mvalues) = '' then
begin
mvalues := '0';
end;
with CDS_MAIN do
begin
edit;
fieldbyname(FFieldName).Value := mvalues;
post;
end;
tv1.Controller.EditingController.ShowEdit();
// if trim(mvalues) <> '' then
// begin
with CDS_MAIN do
begin
Edit;
FieldByName(FFieldName).Value := mvalues;
Post;
end;
FCHANG := StrToFloatDef(CDS_MAIN.FieldByName('CHANG').ASSTRING, 0);
FKUAN := StrToFloatDef(CDS_MAIN.FieldByName('KUAN').ASSTRING, 0);
FGAO := StrToFloatDef(CDS_MAIN.FieldByName('GAO').ASSTRING, 0);
FXG := FCHANG * FKUAN * FGAO / 1000000;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update order_xg ');
SQL.Add(' Set ' + FFieldName + '=' + mvalues);
SQL.Add(',XG=' + FloatToStr(FXG));
sql.Add(' where xgid=''' + Trim(CDS_main.fieldbyname('xgid').AsString) + '''');
ExecSQL;
end;
with CDS_MAIN do
begin
Edit;
FieldByName('XG').Value := FXG;
Post;
end;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmXGSZList.Tv1Column6PropertiesEditValueChanged(Sender: TObject);
var
mvalues, FFieldName: string;
FCHANG, FKUAN, FGAO, FXG: Double;
begin
inherited;
mvalues := TCXTextEdit(Sender).Text;
FFieldName := Trim(tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
if trim(mvalues) = '' then
begin
mvalues := '0';
end;
with CDS_MAIN do
begin
edit;
fieldbyname(FFieldName).Value := mvalues;
post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update order_xg ');
SQL.Add(' Set ' + FFieldName + '=' + mvalues);
sql.Add(' where xgid=''' + Trim(CDS_main.fieldbyname('xgid').AsString) + '''');
ExecSQL;
end;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmXGSZList.Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
FLeft := X;
FTop := Y;
end;
procedure TfrmXGSZList.TextEdit(Sender: TObject);
var
mvalues, FFieldName, MAXNO: string;
begin
inherited;
mvalues := TCXTextEdit(Sender).Text;
FFieldName := Trim(tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_2 do
begin
edit;
fieldbyname(FFieldName).Value := mvalues;
post;
end;
tv2.Controller.EditingController.ShowEdit();
// if trim(mvalues) <> '' then
// begin
if GetLSNo(ADOQUERYTEMP, MAXNO, 'XG', 'order_xg', 3, 1) = False then
begin
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('insert into order_xg (xgid,orderno,p_hx,xg) ');
sql.Add('values(' + QuotedStr(TRIM(MAXNO)));
SQL.Add(',' + QuotedStr(TRIM(cds_2.fieldbyname('ORDERNO').AsString)));
SQL.Add(',' + QuotedStr(TRIM(cds_2.fieldbyname('P_HX').AsString)));
SQL.Add(',' + (TRIM(cds_2.fieldbyname('XG').AsString)));
SQL.Add(')');
ShowMessage(SQL.Text);
ExecSQL;
end;
CDS_2.Delete;
tv2.Controller.EditingController.ShowEdit();
end;
procedure TfrmXGSZList.TV2Column1PropertiesEditValueChanged(Sender: TObject);
var
mvalues, FFieldName: string;
FCHANG, FKUAN, FGAO, FXG: Double;
begin
inherited;
mvalues := TCXTextEdit(Sender).Text;
FFieldName := Trim(tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
if trim(mvalues) = '' then
begin
mvalues := '0';
end;
with CDS_2 do
begin
edit;
fieldbyname(FFieldName).Value := mvalues;
post;
end;
tv2.Controller.EditingController.ShowEdit();
// if trim(mvalues) <> '' then
// begin
with CDS_2 do
begin
Edit;
FieldByName(FFieldName).Value := mvalues;
Post;
end;
FCHANG := StrToFloatDef(CDS_2.FieldByName('CHANG').ASSTRING, 0);
FKUAN := StrToFloatDef(CDS_2.FieldByName('KUAN').ASSTRING, 0);
FGAO := StrToFloatDef(CDS_2.FieldByName('GAO').ASSTRING, 0);
FXG := Roundfloat(FCHANG * FKUAN * FGAO / 1000000, 2);
// ShowMessage(FloatToStr(FXG));
with CDS_2 do
begin
Edit;
FieldByName('XG').asfloat := FXG;
Post;
end;
tv2.Controller.EditingController.ShowEdit();
end;
procedure TfrmXGSZList.TV2Column4PropertiesChange(Sender: TObject);
var
mvalues, FFieldName, MAXNO: string;
begin
inherited;
// if trim(mvalues) <> '' then
// begin
if GetLSNo(ADOQUERYTEMP, MAXNO, 'XG', 'order_xg', 3, 1) = False then
begin
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
Exit;
end;
if cds_2.fieldbyname('CHANG').AsString = '' then
begin
cds_2.fieldbyname('CHANG').AsString := '0';
end;
if cds_2.fieldbyname('KUAN').AsString = '' then
begin
cds_2.fieldbyname('KUAN').AsString := '0';
end;
if cds_2.fieldbyname('GAO').AsString = '' then
begin
cds_2.fieldbyname('GAO').AsString := '0';
end;
if cds_2.fieldbyname('XG').AsString = '' then
begin
cds_2.fieldbyname('XG').AsString := '0';
end;
if cds_2.fieldbyname('dbzl').AsString = '' then
begin
cds_2.fieldbyname('dbzl').AsString := '0';
end;
if cds_2.fieldbyname('XG').AsString = '0' then
begin
if Application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
begin
cds_2.fieldbyname('check2').AsBoolean := False;
Exit;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('insert into order_xg (xgid,orderno,p_hx,xg,CHANG,KUAN,GAO,dbzl) ');
sql.Add('values(' + QuotedStr(TRIM(MAXNO)));
SQL.Add(',' + QuotedStr(TRIM(cds_2.fieldbyname('ORDERNO').AsString)));
SQL.Add(',' + QuotedStr(TRIM(cds_2.fieldbyname('P_HX').AsString)));
SQL.Add(',' + (TRIM(cds_2.fieldbyname('XG').AsString)));
SQL.Add(',' + (TRIM(cds_2.fieldbyname('CHANG').AsString)));
SQL.Add(',' + (TRIM(cds_2.fieldbyname('KUAN').AsString)));
SQL.Add(',' + (TRIM(cds_2.fieldbyname('GAO').AsString)));
SQL.Add(',' + (TRIM(cds_2.fieldbyname('dbzl').AsString)));
SQL.Add(')');
// ShowMessage(SQL.Text);
ExecSQL;
end;
CDS_2.Delete;
tv2.Controller.EditingController.ShowEdit();
end;
procedure TfrmXGSZList.TV2Column4PropertiesEditValueChanged(Sender: TObject);
var
mvalues, FFieldName, MAXNO: string;
begin
inherited;
// if trim(mvalues) <> '' then
// begin
if cds_2.FieldByName('check2').AsBoolean then
begin
if GetLSNo(ADOQUERYTEMP, MAXNO, 'XG', 'order_xg', 3, 1) = False then
begin
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('insert into order_xg (xgid,orderno,p_hx,xg) ');
sql.Add('values(' + QuotedStr(TRIM(MAXNO)));
SQL.Add(',' + QuotedStr(TRIM(cds_2.fieldbyname('ORDERNO').AsString)));
SQL.Add(',' + QuotedStr(TRIM(cds_2.fieldbyname('P_HX').AsString)));
SQL.Add(',' + (TRIM(cds_2.fieldbyname('XG').AsString)));
SQL.Add(')');
// ShowMessage(SQL.Text);
ExecSQL;
end;
CDS_2.Delete;
tv2.Controller.EditingController.ShowEdit();
end;
end;
procedure TfrmXGSZList.TV2DblClick(Sender: TObject);
begin
AssignmentControls(Panel1, CDS_2, '0');
end;
procedure TfrmXGSZList.TV2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
var
WSql: string;
begin
try
ADOQuery1.DisableControls;
with ADOQuery1 do
begin
Filtered := False;
Close;
sql.Clear;
SQL.Add('SELECT orderno,COUNT(BAOID)gs,BS,dbzl=0.00,XG=0.00,zzl=0.00,ZXG=0.00 FROM (');
SQL.Add('select orderno,BAOID,COUNT(BAOID)BS ');
SQL.Add('from CK_Cloth_CR where crflag=''<27><><EFBFBD><EFBFBD>'' and orderno=' + QuotedStr(Trim(CDS_2.fieldbyname('orderno').AsString)));
SQL.Add('AND BAOID IS NOT NULL GROUP BY BAOID,orderno )AA GROUP BY orderno,BS');
// ShowMessage(SQL.Text);
Open;
end;
SCreateCDS(ADOQuery1, CDS_BS1);
SInitCDSData(ADOQuery1, CDS_BS1);
finally
ADOQuery1.EnableControls;
end;
end;
procedure TfrmXGSZList.TV2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
WSql: string;
begin
try
ADOQuery1.DisableControls;
with ADOQuery1 do
begin
Filtered := False;
Close;
sql.Clear;
SQL.Add('SELECT orderno,COUNT(BAOID)gs,BS,dbzl=0.00,XG=0.00,zzl=0.00,ZXG=0.00 FROM (');
SQL.Add('select orderno,BAOID,COUNT(BAOID)BS ');
SQL.Add('from CK_Cloth_CR where crflag=''<27><><EFBFBD><EFBFBD>'' and orderno=' + QuotedStr(Trim(CDS_2.fieldbyname('orderno').AsString)));
SQL.Add('AND BAOID IS NOT NULL GROUP BY BAOID,orderno )AA GROUP BY orderno,BS');
SQL.Add('ORDER BY BS');
// ShowMessage(SQL.Text);
Open;
end;
SCreateCDS(ADOQuery1, CDS_BS1);
SInitCDSData(ADOQuery1, CDS_BS1);
finally
ADOQuery1.EnableControls;
end;
end;
procedure TfrmXGSZList.TV3Column1PropertiesChange(Sender: TObject);
var
mvalues, FFieldName: string;
FBS, FDBZL, FXG, FZZL, FZXG: Double;
begin
inherited;
mvalues := TCXTextEdit(Sender).Text;
FFieldName := Trim(TV3.Controller.FocusedColumn.DataBinding.FilterFieldName);
if trim(mvalues) = '' then
begin
mvalues := '0';
end;
with CDS_BS1 do
begin
edit;
fieldbyname(FFieldName).Value := mvalues;
post;
end;
TV3.Controller.EditingController.ShowEdit();
// if trim(mvalues) <> '' then
// begin
with CDS_BS1 do
begin
Edit;
FieldByName(FFieldName).Value := mvalues;
Post;
end;
FBS := StrToFloatDef(CDS_BS1.FieldByName('BS').ASSTRING, 0);
FXG := StrToFloatDef(CDS_BS1.FieldByName('XG').ASSTRING, 0);
FDBZL := StrToFloatDef(CDS_BS1.FieldByName('DBZL').ASSTRING, 0);
FZZL := FDBZL * FBS;
FZXG := FXG * FBS;
// ShowMessage(FloatToStr(FXG));
with CDS_BS1 do
begin
Edit;
FieldByName('ZZL').asfloat := FZZL;
FieldByName('ZXG').asfloat := FZXG;
Post;
end;
tv3.Controller.EditingController.ShowEdit();
end;
procedure TfrmXGSZList.TV3Column1PropertiesEditValueChanged(Sender: TObject);
var
mvalues, FFieldName: string;
FBS, FDBZL, FXG, FZZL, FZXG: Double;
FZXG1, FZZL1, FZBS1: double;
begin
inherited;
mvalues := TCXTextEdit(Sender).Text;
FFieldName := Trim(TV3.Controller.FocusedColumn.DataBinding.FilterFieldName);
if trim(mvalues) = '' then
begin
mvalues := '0';
end;
with CDS_BS1 do
begin
edit;
fieldbyname(FFieldName).Value := mvalues;
post;
end;
// TV3.Controller.EditingController.ShowEdit();
// if trim(mvalues) <> '' then
// begin
FBS := StrToFloatDef(CDS_BS1.FieldByName('gs').ASSTRING, 0);
FXG := StrToFloatDef(CDS_BS1.FieldByName('XG').ASSTRING, 0);
FDBZL := StrToFloatDef(CDS_BS1.FieldByName('DBZL').ASSTRING, 0);
FZZL := FDBZL * FBS;
FZXG := FXG * FBS;
// ShowMessage(FloatToStr(FXG));
with CDS_BS1 do
begin
Edit;
FieldByName('ZZL').asfloat := FZZL;
FieldByName('ZXG').asfloat := FZXG;
Post;
end;
tv3.Controller.EditingController.ShowEdit();
if TV3.DataController.Summary.FooterSummaryValues[1] <> NULL then
FZXG1 := TV3.DataController.Summary.FooterSummaryValues[1]
else
FZXG1 := 0;
if TV3.DataController.Summary.FooterSummaryValues[0] <> NULL then
FZZL1 := TV3.DataController.Summary.FooterSummaryValues[0]
else
FZZL1 := 0;
if TV3.DataController.Summary.FooterSummaryValues[2] <> NULL then
FZBS1 := TV3.DataController.Summary.FooterSummaryValues[2]
else
FZBS1 := 0;
if FZBS1 <> 0 then
begin
CDS_2.DisableControls;
with CDS_2 do
begin
Edit;
CDS_2.FieldByName('XG').asstring := floattostr(FZXG1 / FZBS1);
CDS_2.FieldByName('DBZL').asstring := floattostr(FZZL1 / FZBS1);
Post;
end;
tv2.Controller.EditingController.ShowEdit();
CDS_2.EnableControls;
end;
// HJJE();
end;
procedure TfrmXGSZList.YWCClick(Sender: TObject);
begin
inherited;
InitGrid();
end;
procedure TfrmXGSZList.BTNPClick(Sender: TObject);
begin
if CurrentPage < CDS_Main.FieldByName('TotalCount').AsInteger / RecordsNumber then
CurrentPage := CurrentPage + 1;
InitGrid();
end;
procedure TfrmXGSZList.Button2Click(Sender: TObject);
begin
inherited;
if Edit1.Text = '' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if CDS_2.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
with CDS_2 do
begin
First;
while not Eof do
begin
if Fieldbyname('Ssel').AsBoolean then
begin
Edit;
FieldByName('XG').Value := StrToFloatDef(Edit1.Text, 0);
Post;
end;
Next;
end;
end;
end;
procedure TfrmXGSZList.Button3Click(Sender: TObject);
begin
inherited;
if Edit2.Text = '' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if CDS_2.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
with CDS_2 do
begin
First;
while not Eof do
begin
if Fieldbyname('Ssel').AsBoolean then
begin
Edit;
FieldByName('dbzl').Value := StrToFloatDef(Edit2.Text, 0);
Post;
end;
Next;
end;
end;
end;
procedure TfrmXGSZList.BTLPClick(Sender: TObject);
begin
if CurrentPage > 1 then
CurrentPage := CurrentPage - 1;
InitGrid();
end;
procedure TfrmXGSZList.TCBNORChange(Sender: TObject);
begin
CurrentPage := 1;
InitGrid();
end;
procedure TfrmXGSZList.ToolButton1Click(Sender: TObject);
begin
inherited;
if CDS_2.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
CDS_2.DisableControls;
try
ADOQueryCmd.Connection.BeginTrans;
with CDS_Main do
begin
First;
while not Eof do
begin
if Fieldbyname('Ssel').AsBoolean then
begin
ADOQueryCmd.append;
ADOQueryCmd.fieldbyname('SubId').Value := Trim(CDS_2.fieldbyname('JYID').AsString);
ADOQueryCmd.fieldbyname('Dname').Value := Trim(DCode);
ADOQueryCmd.post;
end;
Next;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
end;
CDS_2.EnableControls;
end;
procedure TfrmXGSZList.MPRTCodeNameKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
CurrentPage := 1;
InitGrid();
end;
end;
procedure TfrmXGSZList.N1Click(Sender: TObject);
begin
inherited;
SelOKNoFiler(TV2, true);
end;
procedure TfrmXGSZList.N2Click(Sender: TObject);
begin
inherited;
SelOKNoFiler(TV2, false);
end;
procedure TfrmXGSZList.orderNoKeyPress(Sender: TObject; var Key: Char);
begin
inherited;
if Key = #13 then
begin
CurrentPage := 1;
InitGrid();
end;
end;
procedure TfrmXGSZList.P_HXKeyPress(Sender: TObject; var Key: Char);
begin
inherited;
if Key = #13 then
begin
CurrentPage := 1;
InitGrid();
end;
end;
procedure TfrmXGSZList.CPTypeKeyPress(Sender: TObject; var Key: Char);
begin
CurrentPage := 1;
InitGrid();
end;
procedure TfrmXGSZList.cxGridDBColumn4PropertiesEditValueChanged(Sender: TObject);
var
mvalues, FFieldName, MAXNO: string;
begin
inherited;
mvalues := TCXTextEdit(Sender).Text;
FFieldName := Trim(tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
if trim(mvalues) = '' then
begin
mvalues := '0';
end;
with CDS_2 do
begin
edit;
fieldbyname(FFieldName).Value := mvalues;
post;
end;
tv2.Controller.EditingController.ShowEdit();
// if trim(mvalues) <> '' then
// begin
// if GetLSNo(ADOQUERYTEMP, MAXNO, 'XG', 'order_xg', 3, 1) = False then
// begin
//
// Application.MessageBox('ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
// Exit;
// end;
// with ADOQueryCmd do
// begin
// Close;
// sql.Clear;
// sql.Add('insert into order_xg (xgid,orderno,p_hx,xg) ');
// sql.Add('values(' + QuotedStr(TRIM(MAXNO)));
// SQL.Add(',' + QuotedStr(TRIM(cds_2.fieldbyname('ORDERNO').AsString)));
// SQL.Add(',' + QuotedStr(TRIM(cds_2.fieldbyname('P_HX').AsString)));
// SQL.Add(',' + (TRIM(cds_2.fieldbyname('XG').AsString)));
// SQL.Add(')');
//// ShowMessage(SQL.Text);
// ExecSQL;
// end;
// CDS_2.Delete;
tv2.Controller.EditingController.ShowEdit();
end;
procedure TfrmXGSZList.cxGridDBColumn8PropertiesChange(Sender: TObject);
var
mvalues, FFieldName: string;
FBS, FDBZL, FXG, FZZL, FZXG: Double;
begin
inherited;
mvalues := TCXTextEdit(Sender).Text;
FFieldName := Trim(TV3.Controller.FocusedColumn.DataBinding.FilterFieldName);
if trim(mvalues) = '' then
begin
mvalues := '0';
end;
with CDS_BS1 do
begin
edit;
fieldbyname(FFieldName).Value := mvalues;
post;
end;
TV3.Controller.EditingController.ShowEdit();
// if trim(mvalues) <> '' then
// begin
with CDS_BS1 do
begin
Edit;
FieldByName(FFieldName).Value := mvalues;
Post;
end;
FBS := StrToFloatDef(CDS_BS1.FieldByName('BS').ASSTRING, 0);
FXG := StrToFloatDef(CDS_BS1.FieldByName('XG').ASSTRING, 0);
FDBZL := StrToFloatDef(CDS_BS1.FieldByName('DBZL').ASSTRING, 0);
FZZL := FDBZL * FBS;
FZXG := FXG * FBS;
// ShowMessage(FloatToStr(FXG));
with CDS_BS1 do
begin
Edit;
FieldByName('ZZL').asfloat := FZZL;
FieldByName('ZXG').asfloat := FZXG;
Post;
end;
tv3.Controller.EditingController.ShowEdit();
end;
procedure TfrmXGSZList.cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject);
var
mvalues, FFieldName: string;
FBS, FDBZL, FXG, FZZL, FZXG: Double;
begin
inherited;
mvalues := TCXTextEdit(Sender).Text;
FFieldName := Trim(TV3.Controller.FocusedColumn.DataBinding.FilterFieldName);
if trim(mvalues) = '' then
begin
mvalues := '0';
end;
with CDS_BS1 do
begin
edit;
fieldbyname(FFieldName).Value := mvalues;
post;
end;
TV3.Controller.EditingController.ShowEdit();
// if trim(mvalues) <> '' then
// begin
with CDS_BS1 do
begin
Edit;
FieldByName(FFieldName).Value := mvalues;
Post;
end;
FBS := StrToFloatDef(CDS_BS1.FieldByName('BS').ASSTRING, 0);
FXG := StrToFloatDef(CDS_BS1.FieldByName('XG').ASSTRING, 0);
FDBZL := StrToFloatDef(CDS_BS1.FieldByName('DBZL').ASSTRING, 0);
FZZL := FDBZL * FBS;
FZXG := FXG * FBS;
// ShowMessage(FloatToStr(FXG));
with CDS_BS1 do
begin
Edit;
FieldByName('ZZL').asfloat := FZZL;
FieldByName('ZXG').asfloat := FZXG;
Post;
end;
tv3.Controller.EditingController.ShowEdit();
end;
procedure TfrmXGSZList.cxPageControl1Change(Sender: TObject);
begin
CurrentPage := 1;
InitGrid();
// case cxPageControl1.ActivePageIndex of
// 0:
// YWC.Visible := FALSE;
// 1:
// YWC.Visible := TRUE;
//
// end;
end;
end.