D7wmguihua/桂华管理系统/U_OrderSelRK.pas
DESKTOP-E401PHE\Administrator b4b5840f18 1
2025-01-18 16:22:10 +08:00

196 lines
5.8 KiB
ObjectPascal
Raw 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_OrderSelRK;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ADODB, DBClient, ComCtrls,
ExtCtrls, cxGridLevel, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid,
cxGridCustomPopupMenu, cxGridPopupMenu, cxCheckBox;
type
TfrmOrderSelRK = class(TForm)
Panel1: TPanel;
Label2: TLabel;
OrderNo: TEdit;
Label3: TLabel;
PRTColor: TEdit;
CDS_OrderSel: TClientDataSet;
DataSource1: TDataSource;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
Button1: TButton;
Button2: TButton;
Button3: TButton;
cxGridPopupMenu1: TcxGridPopupMenu;
Label8: TLabel;
CustomerNoName: TEdit;
cxGrid1: TcxGrid;
Tv2: TcxGridDBTableView;
v2Column3: TcxGridDBColumn;
v1OrderNo: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
v1PRTMF: TcxGridDBColumn;
v1PRTKZ: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
cxStyleRepository2: TcxStyleRepository;
cxStyle2: TcxStyle;
cxStyleRepository3: TcxStyleRepository;
cxStyle3: TcxStyle;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button2Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure OrderNoChange(Sender: TObject);
procedure Tv2CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
private
{ Private declarations }
procedure InitGrid();
public
{ Public declarations }
end;
var
frmOrderSelRK: TfrmOrderSelRK;
implementation
uses
U_DataLink,U_Fun ;
{$R *.dfm}
procedure TfrmOrderSelRK.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmOrderSelRK.Button2Click(Sender: TObject);
var
KHName:String;
begin
if CDS_OrderSel.Locate('SSel',True,[])=False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
CDS_OrderSel.DisableControls;
KHName:='';
with CDS_OrderSel do
begin
First;
while not Eof do
begin
if FieldByName('SSel').AsBoolean=True then
begin
if Trim(KHName)='' then
begin
KHName:=Trim(fieldbyname('CustomerNo').AsString);
end else
begin
if Trim(fieldbyname('CustomerNo').AsString)<>KHName then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>ͬ<EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD>','<27><>ʾ',0);
Exit;
end;
end;
end;
Next;
end;
end;
CDS_OrderSel.EnableControls;
ModalResult:=1;
end;
procedure TfrmOrderSelRK.FormDestroy(Sender: TObject);
begin
frmOrderSelRK:=nil;
end;
procedure TfrmOrderSelRK.Button3Click(Sender: TObject);
begin
ModalResult:=-1;
WriteCxGrid('<27><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>',Tv2,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
Close;
end;
procedure TfrmOrderSelRK.FormShow(Sender: TObject);
begin
ReadCxGrid('<27><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>',Tv2,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
InitGrid();
end;
procedure TfrmOrderSelRK.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add('select A.OrderNo,A.CustomerNoName,A.CustomerNo,A.MPRTCodeName,A.MainId,B.SubId,B.PRTColor,B.OrderUnit,B.PRTOrderQty');
sql.Add(',A.MPRTMF,A.MPRTKZ');
sql.Add(',ZPPS=(select Count(*) from WFB_MJJY WY ');
sql.Add(' where WY.SubId=B.SubId and isnull(WY.MJStr2,'''')<>''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and WY.MJType=''<27><>Ʒ'') ');
sql.Add(',ZPQty=(select sum(MJLen) from WFB_MJJY WY ');
sql.Add(' where WY.SubId=B.SubId and isnull(WY.MJStr2,'''')<>''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and WY.MJType=''<27><>Ʒ'') ');
sql.Add(',CPPS=(select Count(*) from WFB_MJJY WY ');
sql.Add(' where WY.SubId=B.SubId and isnull(WY.MJStr2,'''')<>''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and WY.MJType=''<27><>Ʒ'') ');
sql.Add(',CPQty=(select sum(MJLen) from WFB_MJJY WY ');
sql.Add(' where WY.SubId=B.SubId and isnull(WY.MJStr2,'''')<>''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and WY.MJType=''<27><>Ʒ'') ');
sql.Add(',LYPS=(select Count(*) from WFB_MJJY WY ');
sql.Add(' where WY.SubId=B.SubId and isnull(WY.MJStr2,'''')<>''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and WY.MJType=''<27><><EFBFBD><EFBFBD>'') ');
sql.Add(',LYQty=(select sum(MJLen) from WFB_MJJY WY ');
sql.Add(' where WY.SubId=B.SubId and isnull(WY.MJStr2,'''')<>''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and WY.MJType=''<27><><EFBFBD><EFBFBD>'') ');
sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.Mainid');
sql.Add(' where exists(select * from WFB_MJJY AA ');
sql.Add(' where AA.MainId=A.MainId and AA.SubId=B.SubId and isnull(AA.MJStr2,'''')<>''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' )');
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_OrderSel);
SInitCDSData20(ADOQueryMain,CDS_OrderSel);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmOrderSelRK.Button1Click(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmOrderSelRK.OrderNoChange(Sender: TObject);
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,CDS_OrderSel);
SInitCDSData20(ADOQueryMain,CDS_OrderSel);
end;
procedure TfrmOrderSelRK.Tv2CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
ModalResult:=1;
end;
end.