D7wmbeiqi/贝其贸易管理/U_CpCkSaoMNewSel.pas
DESKTOP-E401PHE\Administrator 0843d5fa7d ~
2025-04-30 16:20:38 +08:00

1676 lines
58 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_CpCkSaoMNewSel;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ExtCtrls, ADODB, DBClient,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxControls, cxGridCustomView, cxGrid, MovePanel, cxCheckBox, Menus,
ComCtrls, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator;
type
TfrmCpCkSaoMNewSel = class(TForm)
cxGridPopupMenu1: TcxGridPopupMenu;
CDS_Main: TClientDataSet;
DataSource1: TDataSource;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
Panel1: TPanel;
BaoID: TEdit;
Label1: TLabel;
Button2: TButton;
Button3: TButton;
CDS_Sub: TClientDataSet;
DataSource2: TDataSource;
ADOQuerySub: TADOQuery;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_MainSel: TDataSource;
CDS_MainSel: TClientDataSet;
Button1: TButton;
cxGridPopupMenu4: TcxGridPopupMenu;
cxGrid1: TcxGrid;
Tv2: TcxGridDBTableView;
v1OrderNo: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
v1PRTMF: TcxGridDBColumn;
v1PRTKZ: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column6: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
cxGrid3: TcxGrid;
Tv3: TcxGridDBTableView;
v3Column5: TcxGridDBColumn;
cxGridDBColumn1: TcxGridDBColumn;
v3Column3: TcxGridDBColumn;
v3Column4: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
v3Column1: TcxGridDBColumn;
cxGridDBColumn6: TcxGridDBColumn;
v3Column2: TcxGridDBColumn;
v3Column6: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
PopupMenu2: TPopupMenu;
MenuItem1: TMenuItem;
MenuItem2: TMenuItem;
Button5: TButton;
CRTime: TDateTimePicker;
Label4: TLabel;
Label5: TLabel;
CKOrdNo: TEdit;
ADOQueryPrice: TADOQuery;
CDSPrice: TClientDataSet;
Label6: TLabel;
RKOrdID: TEdit;
Label7: TLabel;
v1Column8: TcxGridDBColumn;
v3Column7: TcxGridDBColumn;
MovePanel1: TMovePanel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Button4: TButton;
MovePanel2: TMovePanel;
v1Column9: TcxGridDBColumn;
v3Column8: TcxGridDBColumn;
Label8: TLabel;
CRNote: TEdit;
bao: TEdit;
Label9: TLabel;
v1Column11: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
Label10: TLabel;
THMJID: TEdit;
v3MJID: TcxGridDBColumn;
Label12: TLabel;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
Label11: TLabel;
CRType: TComboBox;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure BaoIDKeyPress(Sender: TObject; var Key: Char);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Tv2CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure Button4Click(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure MenuItem1Click(Sender: TObject);
procedure MenuItem2Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure RKOrdIDKeyPress(Sender: TObject; var Key: Char);
procedure baoKeyPress(Sender: TObject; var Key: Char);
procedure THMJIDKeyPress(Sender: TObject; var Key: Char);
procedure N3Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N5Click(Sender: TObject);
private
OrderNum,yd:double;
fOrderUnit:string;
{ Private declarations }
procedure InitGrid();
procedure InitSubGrid();
function YSData(Order_Main10:TClientDataSet):Boolean;
procedure InitPrice();
public
{ Public declarations }
end;
var
frmCpCkSaoMNewSel: TfrmCpCkSaoMNewSel;
implementation
uses
U_DataLink,U_Fun,U_OrderSel ;
{$R *.dfm}
procedure TfrmCpCkSaoMNewSel.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmCpCkSaoMNewSel.FormDestroy(Sender: TObject);
begin
frmCpCkSaoMNewSel:=nil;
end;
procedure TfrmCpCkSaoMNewSel.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
SQL.Add('select A.*,OrderNo=(select OrderNo from JYOrder_Main where MainId=A.MainId) ');
sql.Add(',KHName=(select isnull(customerNoName,OrderNo) from JYOrder_Main where MainId=A.MainId)');
SQL.Add(',PRTColor=(select PRTColor from JYOrder_Sub where SubId=A.SubId)');
sql.Add(',AOrdDefstr1=(select AOrdDefstr1 from JYOrder_Sub_AnPai where ApId=A.ApId)');
sql.Add(',MJXH=(select MJXH from WFB_MJJY where MJID=A.MJID)');
sql.Add('from CK_BanCP_CR A');
sql.add('where 1<>1');
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
SQL.Add('select A.*,OrderNo=(select OrderNo from JYOrder_Main where MainId=A.MainId) ');
sql.Add(',KHName=(select isnull(customerNoName,OrderNo) from JYOrder_Main where MainId=A.MainId)');
SQL.Add(',PRTColor=(select PRTColor from JYOrder_Sub where SubId=A.SubId)');
sql.Add(',AOrdDefstr1=(select AOrdDefstr1 from JYOrder_Sub_AnPai where ApId=A.ApId)');
sql.Add(',MJXH=(select MJXH from WFB_MJJY where MJID=A.MJID)');
sql.Add('from CK_BanCP_CR A');
sql.add('where 1<>1');
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_MainSel);
SInitCDSData20(ADOQueryMain,CDS_MainSel);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmCpCkSaoMNewSel.FormShow(Sender: TObject);
begin
ReadCxGrid('<27><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>',Tv2,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
ReadCxGrid('<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>',Tv1,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
ReadCxGrid('<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>Sels',Tv3,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
InitSubGrid();
InitGrid();
CRTime.DateTime:=SGetServerDate(ADOQueryTemp);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select Mainid,PRTPrice,KHName='''' from JYOrder_Sub where 1<>1');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDSPrice);
SInitCDSData20(ADOQueryTemp,CDSPrice);
end;
procedure TfrmCpCkSaoMNewSel.InitPrice();
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select Mainid,PRTPrice,KHName=Cast('''' as varchar(50)) from JYOrder_Sub where 1<>1');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDSPrice);
SInitCDSData20(ADOQueryTemp,CDSPrice);
if CDSPrice.IsEmpty=False then
begin
CDSPrice.Delete;
end;
end;
procedure TfrmCpCkSaoMNewSel.BaoIDKeyPress(Sender: TObject; var Key: Char);
var
maxno:String;
begin
if Key=#13 then
begin
Label12.Caption:='';
if CDS_Sub.IsEmpty then
begin
BaoID.Text:='';
Application.MessageBox(ѡ<CEB4><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD><EFBFBD>⣡','<27><>ʾ',0);
Exit;
end;
if Trim(CKOrdNo.Text)='' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Trim(CRType.Text)='' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if CDS_MainSel.Locate('MJId',Trim(BaoID.Text),[]) then
begin
MovePanel1.Visible:=True;
Edit2.Text:=Trim(BaoID.Text);
Label12.Caption:='<27><><EFBFBD>ѣ<EFBFBD><D1A3>˾<EFBFBD><CBBE>ظ<EFBFBD>ɨ<EFBFBD>裡';
BaoID.Text:='';
// Application.MessageBox('<27>˾<EFBFBD><CBBE>ظ<EFBFBD>ɨ<EFBFBD>裡','<27><>ʾ',0);
Exit;
end;
if CDS_Main.Locate('MJId',Trim(BaoID.Text),[])=False then
begin
MovePanel1.Visible:=True;
Edit2.Text:=Trim(BaoID.Text);
Label12.Caption:='<27><><EFBFBD>ѣ<EFBFBD><D1A3>˾<EFBFBD><CBBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>';
BaoID.Text:='';
// Application.MessageBox('<27>˾<EFBFBD><CBBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>','<27><>ʾ',0);
Exit;
end;
CDS_Main.Locate('MJId',Trim(BaoID.Text),[]);
try
ADOQueryCmd.Connection.BeginTrans;
with CDS_Main do
begin
if GetLSNo(ADOQueryCmd,maxno,'CC','CK_BanCp_CR',4,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from CK_BanCp_CR where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('BCID').Value:=Trim(maxno);
FieldByName('CRID').Value:=CDS_Main.fieldbyname('CRID').Value;
FieldByName('CRTime').Value:=SGetServerDateTime(ADOQueryTemp);
FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value;
FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value;
FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value;
FieldByName('MJID').Value:=CDS_Main.fieldbyname('MJID').Value;
FieldByName('MainID').Value:=CDS_Main.fieldbyname('MainID').Value;
FieldByName('SubID').Value:=CDS_Main.fieldbyname('SubID').Value;
FieldByName('APID').Value:=CDS_Main.fieldbyname('APID').Value;
FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value;
FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value;
FieldByName('BaoID').Value:=CDS_Main.fieldbyname('BaoID').Value;
FieldByName('RKPlace').Value:=CDS_Main.fieldbyname('RKPlace').AsString;
FieldByName('Filler').Value:=Trim(DName);
FieldByName('CRFlag').Value:='<27><><EFBFBD><EFBFBD>';
FieldByName('CRType').Value:=trim(CRType.Text);
FieldByName('CKOrdNo').Value:=Trim(CKOrdNo.Text);
FieldByName('CRNote').Value:=Trim(CRNote.Text);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_BanCp_KC set KCKgQty=0,KCQty=0 where CRID='+CDS_Main.fieldbyname('CRID').AsString);
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update WFB_MJJY Set MJStr2=''<27>ѳ<EFBFBD><D1B3><EFBFBD>'' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+'''');
ExecSQL;
end;
end;
{ if YSData(CDS_Main)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end; }
ADOQueryCmd.Connection.CommitTrans;
with CDS_MainSel do
begin
Append;
FieldByName('MainId').Value:=CDS_Main.fieldbyname('MainId').Value;
FieldByName('SubId').Value:=Self.CDS_Main.fieldbyname('SubId').Value;
FieldByName('OrderNo').Value:=Self.CDS_Main.fieldbyname('OrderNo').Value;
FieldByName('KGQty').Value:=Self.CDS_Main.fieldbyname('KGQty').Value;
FieldByName('Qty').Value:=Self.CDS_Main.fieldbyname('Qty').Value;
FieldByName('QtyUnit').Value:=Self.CDS_Main.fieldbyname('QtyUnit').Value;
FieldByName('MJId').Value:=Self.CDS_Main.fieldbyname('MJId').Value;
FieldByName('CRId').Value:=Self.CDS_Main.fieldbyname('CRId').Value;
FieldByName('APID').Value:=Self.CDS_Main.fieldbyname('APID').Value;
FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value;
FieldByName('BCID').Value:=Trim(maxno);
FieldByName('PRTColor').Value:=Self.CDS_Main.fieldbyname('PRTColor').Value;
FieldByName('MJXH').Value:=Self.CDS_Main.fieldbyname('MJXH').Value;
FieldByName('AOrdDefstr1').Value:=CDS_Main.fieldbyname('AOrdDefstr1').Value;
FieldByName('KHName').Value:=CDS_Main.fieldbyname('KHName').Value;
FieldByName('RKOrdId').Value:=CDS_Main.fieldbyname('RKOrdId').Value;
FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value;
//FieldByName('JZXNo').Value:=Trim(JZXNo.Text);
Post;
end;
CDS_Main.Delete;
{ MovePanel1.Visible:=True;
if CDS_MainSel.IsEmpty=False then
Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2])
else
Edit1.Text:='0';
Edit2.Text:=Trim(BaoID.Text); }
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select PrtOrderQty,OrderUnit,yd=dbo.F_Get_YD(MainID) from JYOrder_sub ');
sql.Add('where subID='''+trim(CDS_MainSel.fieldbyname('SubId').AsString)+''' ');
open;
end;
OrderNum:= ADOQueryTemp.fieldbyname('PrtOrderQty').AsFloat;
yd:=ADOQueryTemp.fieldbyname('yd').AsInteger;
fOrderUnit:=trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString);
IF (yd>0.0) and (OrderNum>0) then
begin
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select sum(A.Qty)as Qty,sum(B.MjQty4) as KGQty from CK_BanCP_CR A ');
sql.Add('inner join WFB_MJJY B on B.MJID=A.MJID ');
sql.Add('where A.subID='''+trim(CDS_MainSel.fieldbyname('SubId').AsString)+''' ');
sql.Add('and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
open;
end;
IF (((ADOQueryTemp.fieldbyname('KGQty').AsFloat-OrderNum)/OrderNum*100.00)>yd) and (Uppercase(fOrderUnit)='KG') then
begin
application.MessageBox('<27>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_ICONERROR);
exit;
end
else
IF (((ADOQueryTemp.fieldbyname('Qty').AsFloat-OrderNum)/OrderNum*100.00)>yd) and (Uppercase(fOrderUnit)<>'KG') then
begin
application.MessageBox('<27>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_ICONERROR);
exit;
end;
end;
BaoID.Text:='';
Exit;
except
BaoID.Text:='';
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>','<27><>ʾ',0);
end;
end;
end;
procedure TfrmCpCkSaoMNewSel.Button2Click(Sender: TObject);
begin
tv1.Controller.EditingController.ShowEdit();
tv3.Controller.EditingController.ShowEdit();
Close;
WriteCxGrid('<27><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>',Tv2,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
WriteCxGrid('<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>',Tv1,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
WriteCxGrid('<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>Sels',Tv3,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
end;
procedure TfrmCpCkSaoMNewSel.Button3Click(Sender: TObject);
var
maxno,fsj:String;
begin
{if CDS_Main.IsEmpty=False then
begin
Application.MessageBox('<27><>ɨ<EFBFBD><EFBFBD>ܸ<EFBFBD><DCB8>ĵ<EFBFBD><C4B5>ţ<EFBFBD>','<27><>ʾ',0);
Exit;
end;}
try
frmOrderSel:=TfrmOrderSel.Create(Application);
with frmOrderSel do
begin
if ShowModal=1 then
begin
CDS_OrderSel.DisableControls;
with CDS_OrderSel do
begin
First;
while not Eof do
begin
if FieldByName('SSel').Value=True then
begin
if Self.CDS_Sub.Locate('SubId',Trim(CDS_OrderSel.fieldbyname('SubId').AsString),[])=False then
begin
with Self.CDS_Sub do
begin
Append;
FieldByName('MainId').Value:=Trim(CDS_OrderSel.fieldbyname('MainId').AsString);
FieldByName('SubId').Value:=Trim(CDS_OrderSel.fieldbyname('SubId').AsString);
FieldByName('CustomerNo').Value:=Trim(CDS_OrderSel.fieldbyname('CustomerNo').AsString);
FieldByName('OrderNo').Value:=Trim(CDS_OrderSel.fieldbyname('OrderNo').AsString);
FieldByName('CustomerNoName').Value:=Trim(CDS_OrderSel.fieldbyname('CustomerNoName').AsString);
FieldByName('MPRTCodeName').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTCodeName').AsString);
FieldByName('PRTOrderQty').Value:=Trim(CDS_OrderSel.fieldbyname('PRTOrderQty').AsString);
FieldByName('OrderUnit').Value:=Trim(CDS_OrderSel.fieldbyname('OrderUnit').AsString);
FieldByName('PRTColor').Value:=Trim(CDS_OrderSel.fieldbyname('PRTColor').AsString);
FieldByName('MPRTMF').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTMF').AsString);
FieldByName('MPRTKZ').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTKZ').AsString);
Post;
end;
end;
end;
Next;
end;
end;
CDS_OrderSel.EnableControls;
end;
end;
finally
frmOrderSel.Free;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete TBSubID where DName='''+Trim(DCode)+'''');
ExecSQL;
end;
CDS_Sub.DisableControls;
with CDS_Sub do
begin
First;
while not Eof do
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('insert into TBSubID select :SubId,:Dname');
Parameters.ParamByName('SubId').Value:=Trim(CDS_Sub.fieldbyname('SubId').AsString);
Parameters.ParamByName('Dname').Value:=Trim(DCode);
ExecSQL;
end;
Next;
end;
end;
CDS_Sub.EnableControls;
with Self.ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add('select orderNo=(select OrderNo from JYOrder_Main where MainId=A.MainId), A.* ');
sql.Add(',KHName=(select isnull(customerNoName,OrderNo) from JYOrder_Main where MainId=A.MainId)');
SQL.Add(',PRTColor=(select PRTColor from JYOrder_Sub where SubId=A.SubId)');
sql.Add(',AOrdDefstr1=(select MJStr4 from WFB_MJJY where MJID=A.MJID)');
sql.Add(',MJXH=(select MJXH from WFB_MJJY where MJID=A.MJID)');
sql.Add(' from CK_BanCP_CR A inner join CK_BanCP_KC B on A.CRID=B.CRID');
sql.Add(' where exists( select * from TBSubID AA where AA.SubId=A.SubId and AA.DName='''+Trim(DCode)+''') ');
SQL.Add(' and (B.KCqty>0 or B.KCKgQty>0) and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_Main);
SInitCDSData20(ADOQueryTemp,CDS_Main);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select A.MainId,A.PRTPrice,C.CustomerNoName from JYOrder_Sub A inner join TBSubID B on A.SubId=B.SubId');
sql.Add(' inner join JYOrder_Main C on A.MainId=C.MainId ');
sql.Add(' where B.DName='''+Trim(DCode)+'''');
sql.Add(' group by A.MainId,A.PRTPrice,C.CustomerNoName');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDSPrice);
SInitCDSData20(ADOQueryTemp,CDSPrice);
if GetLSNo(ADOQueryCmd,maxno,'CK','CK_BanCP_CR',3,1)=False then
begin
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><E2B5A5>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
CKOrdNo.Text:=Trim(maxno);
end;
procedure TfrmCpCkSaoMNewSel.InitSubGrid();
begin
try
ADOQuerySub.DisableControls;
with ADOQuerySub do
begin
Close;
sql.Clear;
sql.Add('select A.*,B.*');
sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.Mainid');
sql.Add(' where 1<>1 ');
Open;
end;
SCreateCDS20(ADOQuerySub,CDS_Sub);
SInitCDSData20(ADOQuerySub,CDS_Sub);
finally
ADOQuerySub.EnableControls;
end;
end;
procedure TfrmCpCkSaoMNewSel.Button1Click(Sender: TObject);
var
FMainid:String;
begin
if CDS_MainSel.IsEmpty then Exit;
if CDS_MainSel.Locate('SSel',True,[])=False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫִ<D2AA>д˲<D0B4><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
MovePanel2.Visible:=True;
MovePanel2.Refresh;
InitPrice();
try
ADOQueryCmd.Connection.BeginTrans;
CDS_MainSel.DisableControls;
with CDS_MainSel do
begin
//First;
while CDS_MainSel.Locate('SSel',True,[])=True do
begin
//if CDS_MainSel.FieldByName('SSel').AsBoolean=True then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete CK_BanCP_CR where BCID='''+Trim(CDS_MainSel.fieldbyname('BCID').AsString)+'''');
sql.Add('UPdate CK_BanCP_KC Set KCKgQty=(select KgQty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'') ');
sql.Add(',KCQty=(select Qty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'') ');
SQL.Add(' where CRID='+CDS_MainSel.fieldbyname('CRID').AsString);
sql.Add('Update WFB_MJJY Set MJStr2=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' where MJID='''+Trim(CDS_MainSel.fieldbyname('MJID').AsString)+'''');
ExecSQL;
end;
CDS_Main.DisableControls;
with CDS_Main do
begin
Append;
FieldByName('MainId').Value:=CDS_MainSel.fieldbyname('MainId').Value;
FieldByName('SubId').Value:=Self.CDS_MainSel.fieldbyname('SubId').Value;
FieldByName('OrderNo').Value:=Self.CDS_MainSel.fieldbyname('OrderNo').Value;
FieldByName('KgQty').Value:=Self.CDS_MainSel.fieldbyname('KgQty').Value;
FieldByName('Qty').Value:=Self.CDS_MainSel.fieldbyname('Qty').Value;
FieldByName('QtyUnit').Value:=Self.CDS_MainSel.fieldbyname('QtyUnit').Value;
FieldByName('MJId').Value:=Self.CDS_MainSel.fieldbyname('MJId').Value;
FieldByName('CRId').Value:=Self.CDS_MainSel.fieldbyname('CRId').Value;
FieldByName('APID').Value:=Self.CDS_MainSel.fieldbyname('APID').Value;
FieldByName('CPType').Value:=Self.CDS_MainSel.fieldbyname('CPType').Value;
FieldByName('PRTColor').Value:=Self.CDS_MainSel.fieldbyname('PRTColor').Value;
FieldByName('AOrddefstr1').Value:=Self.CDS_MainSel.fieldbyname('AOrddefstr1').Value;
FieldByName('MJXH').Value:=Self.CDS_MainSel.fieldbyname('MJXH').Value;
FieldByName('KHName').Value:=CDS_MainSel.fieldbyname('KHName').Value;
FieldByName('RKOrdID').Value:=CDS_MainSel.fieldbyname('RKOrdID').Value;
FieldByName('BaoNo').Value:=CDS_MainSel.fieldbyname('BaoNo').Value;
FieldByName('BaoID').Value:=CDS_MainSel.fieldbyname('BaoID').Value;
Post;
end;
CDS_Main.EnableControls;
if CDSPrice.Locate('MainId',Trim(CDS_MainSel.fieldbyname('MainId').AsString),[])=False then
begin
with CDSPrice do
begin
Append;
FieldByName('MainId').Value:=CDS_MainSel.fieldbyname('MainId').Value;
FieldByName('KHName').Value:=CDS_MainSel.fieldbyname('KHName').Value;
Post;
end;
end;
CDS_MainSel.Delete;
end;
end;
end;
CDS_MainSel.EnableControls;
CDSPrice.DisableControls;
{ with CDSPrice do
begin
First;
while not Eof do
begin
if YSData(CDSPrice)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
Next;
end;
end; }
CDSPrice.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
MovePanel2.Visible:=False;
Exit;
except
MovePanel2.Visible:=False;
CDS_MainSel.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>','<27><>ʾ',0);
end;
end;
procedure TfrmCpCkSaoMNewSel.Tv2CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
if CDS_MainSel.IsEmpty=False then Exit;
if CDS_Sub.IsEmpty then Exit;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not Eof do
begin
if Trim(CDS_Main.fieldbyname('SubId').AsString)=Trim(CDS_Sub.fieldbyname('SubId').AsString) then
begin
CDS_Main.Delete;
end else
Next;
end;
end;
CDS_Main.EnableControls;
CDS_Sub.Delete;
end;
procedure TfrmCpCkSaoMNewSel.Button4Click(Sender: TObject);
begin
MovePanel1.Visible:=False;
end;
procedure TfrmCpCkSaoMNewSel.N1Click(Sender: TObject);
begin
// SelOKNo(CDS_Main,True);
SelOKNoFiler(tv1,true);
end;
procedure TfrmCpCkSaoMNewSel.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main,False);
end;
procedure TfrmCpCkSaoMNewSel.MenuItem1Click(Sender: TObject);
begin
SelOKNoFiler(tv3,true);
// SelOKNo(CDS_MainSel,True);
end;
procedure TfrmCpCkSaoMNewSel.MenuItem2Click(Sender: TObject);
begin
SelOKNo(CDS_MainSel,False);
end;
procedure TfrmCpCkSaoMNewSel.Button5Click(Sender: TObject);
var
maxno:String;
CRID:Integer;
MaxCkNo,MaxCkSubNo:String;
begin
if CDS_Sub.IsEmpty then Exit;
if CDS_Main.Locate('SSel',True,[])=False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
if Trim(CKOrdNo.Text)='' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Trim(CRType.Text)='' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫִ<D2AA>г<EFBFBD><D0B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then exit;
MovePanel2.Visible:=True;
MovePanel2.Refresh;
InitPrice();
try
ADOQueryCmd.Connection.BeginTrans;
CDS_Main.DisableControls;
CDS_MainSel.DisableControls;
with CDS_Main do
begin
//First;
while CDS_Main.Locate('SSel',True,[])=True do
begin
//if CDS_Main.FieldByName('SSel').AsBoolean=True then
begin
if GetLSNo(ADOQueryTemp,maxno,'CC','CK_BanCp_CR',4,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from CK_BanCp_CR where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('BCID').Value:=Trim(maxno);
FieldByName('CRID').Value:=CDS_Main.fieldbyname('CRID').Value;
FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',CRTime.Date);
FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value;
FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value;
FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value;
FieldByName('MJID').Value:=CDS_Main.fieldbyname('MJID').Value;
FieldByName('MainID').Value:=CDS_Main.fieldbyname('MainID').Value;
FieldByName('SubID').Value:=CDS_Main.fieldbyname('SubID').Value;
FieldByName('APID').Value:=CDS_Main.fieldbyname('APID').Value;
FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value;
FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value;
FieldByName('BaoID').Value:=CDS_Main.fieldbyname('BaoID').Value;
FieldByName('RKPlace').Value:=CDS_Main.fieldbyname('RKPlace').AsString;
FieldByName('Filler').Value:=Trim(DName);
FieldByName('CRFlag').Value:='<27><><EFBFBD><EFBFBD>';
FieldByName('CRType').Value:=trim(CRType.Text);
FieldByName('CKOrdNo').Value:=Trim(CKOrdNo.Text);
FieldByName('CRNote').Value:=Trim(CRNote.Text);
//FieldByName('JZXNo').Value:=Trim(JZXNo.Text);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_BanCp_KC set KCKgQty=0,KCQty=0 where CRID='+CDS_Main.fieldbyname('CRID').AsString);
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update WFB_MJJY Set MJStr2=''<27>ѳ<EFBFBD><D1B3><EFBFBD>'',note='''+trim(CRNote.Text)+''' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+'''');
ExecSQL;
end;
if CDSPrice.Locate('MainId',Trim(CDS_Main.fieldbyname('MainId').AsString),[])=False then
begin
CDSPrice.Append;
CDSPrice.FieldByName('MainId').Value:=Trim(CDS_Main.fieldbyname('MainId').AsString);
CDSPrice.FieldByName('KHName').Value:=Trim(CDS_Main.fieldbyname('KHName').AsString);
//CDS_Sub.Locate('MainId',Trim(CDS_Main.fieldbyname('MainId').AsString),[]);
{if Trim(CDS_Sub.fieldbyname('OrderUnit').AsString)<>'Kg' then
begin
CDSPrice.FieldByName('JLUnit').Value:='M';
end else
begin
CDSPrice.FieldByName('JLUnit').Value:='Kg';
end; }
CDSPrice.Post;
end;
// CDS_MainSel.DisableControls;
with CDS_MainSel do
begin
Append;
FieldByName('MainId').Value:=CDS_Main.fieldbyname('MainId').Value;
FieldByName('SubId').Value:=Self.CDS_Main.fieldbyname('SubId').Value;
FieldByName('OrderNo').Value:=Self.CDS_Main.fieldbyname('OrderNo').Value;
FieldByName('KGQty').Value:=Self.CDS_Main.fieldbyname('KGQty').Value;
FieldByName('Qty').Value:=Self.CDS_Main.fieldbyname('Qty').Value;
FieldByName('QtyUnit').Value:=Self.CDS_Main.fieldbyname('QtyUnit').Value;
FieldByName('MJId').Value:=Self.CDS_Main.fieldbyname('MJId').Value;
FieldByName('CRId').Value:=Self.CDS_Main.fieldbyname('CRId').Value;
FieldByName('APID').Value:=Self.CDS_Main.fieldbyname('APID').Value;
FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value;
FieldByName('BCID').Value:=Trim(maxno);
FieldByName('PRTColor').Value:=Self.CDS_Main.fieldbyname('PRTColor').Value;
FieldByName('MJXH').Value:=Self.CDS_Main.fieldbyname('MJXH').Value;
FieldByName('AOrdDefstr1').Value:=CDS_Main.fieldbyname('AOrdDefstr1').Value;
FieldByName('KHName').Value:=CDS_Main.fieldbyname('KHName').Value;
FieldByName('RKOrdId').Value:=CDS_Main.fieldbyname('RKOrdId').Value;
FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value;
//FieldByName('JZXNo').Value:=Trim(JZXNo.Text);
Post;
end;
// CDS_MainSel.EnableControls;
CDS_Main.Delete;
end;
end;
end;
CDS_MainSel.EnableControls;
CDS_Main.EnableControls;
CDS_Sub.DisableControls;
CDSPrice.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
MovePanel2.Visible:=False;
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select PrtOrderQty,OrderUnit,yd=dbo.F_Get_YD(MainID) from JYOrder_sub ');
sql.Add('where subID='''+trim(CDS_MainSel.fieldbyname('SubId').AsString)+''' ');
open;
end;
OrderNum:= ADOQueryTemp.fieldbyname('PrtOrderQty').AsFloat;
yd:=ADOQueryTemp.fieldbyname('yd').AsInteger;
fOrderUnit:=trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString);
IF (yd>0.0) and (OrderNum>0) then
begin
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select sum(A.Qty)as Qty,sum(B.MjQty4) as KGQty from CK_BanCP_CR A ');
sql.Add('inner join WFB_MJJY B on B.MJID=A.MJID ');
sql.Add('where A.subID='''+trim(CDS_MainSel.fieldbyname('SubId').AsString)+''' ');
sql.Add('and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
open;
end;
IF (((ADOQueryTemp.fieldbyname('KGQty').AsFloat-OrderNum)/OrderNum*100.00)>yd) and (Uppercase(fOrderUnit)='KG') then
begin
application.MessageBox('<27>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_ICONERROR);
exit;
end
else
IF (((ADOQueryTemp.fieldbyname('Qty').AsFloat-OrderNum)/OrderNum*100.00)>yd) and (Uppercase(fOrderUnit)<>'KG') then
begin
application.MessageBox('<27>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_ICONERROR);
exit;
end;
end;
Exit;
except
BaoID.Text:='';
CDS_Main.EnableControls;
MovePanel2.Visible:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>','<27><>ʾ',0);
end;
end;
function TfrmCpCkSaoMNewSel.YSData(Order_Main10:TClientDataSet):Boolean;
var
CRID,YFID,Price,PriceUnit,OrderUnit,FComTaiTou:String;
begin
Result:=False;
with Order_Main10 do
begin
//First;
//while not Eof do
begin
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add('select Top 1 * from JYOrder_Sub Where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+'''');
//sql.Add(' and PRTPrice>0');
Open;
end;
PriceUnit:=Trim(ADOQueryTemp.fieldbyname('PriceUnit').AsString);
OrderUnit:=Trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select OrdDefStr2 from JYOrder_Main where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+'''');
Open;
end;
FComTaiTou:=Trim(ADOQueryTemp.fieldbyname('OrdDefStr2').AsString);
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main10.fieldbyname('KHName').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty=False then
begin
CRID:=ADOQueryTemp.fieldbyname('CRID').AsString;
end else
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_CRID set CRID=CRID+1');
sql.Add('select * from YF_Money_CRID ');
Open;
end;
CRID:=ADOQueryCmd.fieldbyname('CRID').AsString;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('CRID').Value:=StrToInt(CRID);
FieldByName('FactoryName').Value:=Trim(Order_Main10.fieldbyname('KHName').AsString);
FieldByName('ZdyStr1').Value:=<><D3A6><EFBFBD><EFBFBD>';
Post;
end;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(Order_Main10.fieldbyname('KHName').AsString)+'''');
sql.Add(' and YFTypeId='''+Trim(Order_Main10.fieldbyname('Mainid').AsString)+'''');
//sql.Add(' and Price='+Order_Main10.fieldbyname('PRTPrice').AsString);
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',3,1)=False then
begin
Application.MessageBox(<><C8A1>ƷӦ<C6B7><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('YFID').Value:=Trim(YFID);
FieldByName('YFTypeId').Value:=Trim(Order_Main10.fieldbyname('MainId').AsString);
FieldByName('CRID').Value:=StrToInt(CRID);
FieldByName('Filler').Value:=Trim(DName);
FieldByName('CRType').Value:=<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>';
FieldByName('CRFlag').Value:=<><D3A6><EFBFBD><EFBFBD>';
FieldByName('QtyFlag').Value:=1;
FieldByName('FactoryName').Value:=Trim(Order_Main10.fieldbyname('KHName').AsString);
FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTime.Date));
FieldByName('YFType').Value:='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
//FieldByName('Price').Value:=Order_Main10.fieldbyname('PRTPrice').Value;
//FieldByName('HuiLv').Value:=1;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select Top 1 HuiLv from YF_Money_CR ');
sql.Add(' where Mainid='''+Trim(Order_Main10.fieldbyname('Mainid').AsString)+'''');
sql.Add(' and CRType=''<27>տ<EFBFBD><D5BF>Ǽ<EFBFBD>'' ');
SQL.Add(' and YFDefFlag1=0');
Open;
end;
if ADOQueryTemp.IsEmpty=False then
begin
ADOQueryCmd.FieldByName('HuiLv').Value:=ADOQueryTemp.fieldbyname('HuiLv').Value;
end;
FieldByName('BZType').Value:=Trim(PriceUnit);
FieldByName('QtyUnit').Value:=Trim(OrderUnit);
FieldByName('ComTaiTou').Value:=Trim(FComTaiTou);
FieldByName('YFName').Value:='<27><><EFBFBD>۽<EFBFBD><DBBD><EFBFBD>';
FieldByName('MainId').Value:=Trim(Order_Main10.fieldbyname('Mainid').AsString);
Post;
end;
end else
begin
YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
if Trim(OrderUnit)<>'Kg' then
begin
sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(A.Qty),0) from CK_BanCP_CR A ');
end else
begin
sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(A.KgQty),0) from CK_BanCP_CR A ');
end;
sql.Add(' inner join JYOrder_Sub B on A.SubId=B.SubId where');
SQL.Add(' A.MainId=YF_Money_CR.YFTypeId and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and CPType=''<27><>Ʒ'' ');
SQL.Add(' )'); //and B.PRTPrice=YF_Money_CR.Price
sql.Add(',PS=(select isnull(count(*),0) from CK_BanCP_CR A ');
sql.Add(' inner join JYOrder_Sub B on A.SubId=B.SubId where');
SQL.Add(' A.MainId=YF_Money_CR.YFTypeId and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and CPType=''<27><>Ʒ'' ');
SQL.Add(' )'); //and B.PRTPrice=YF_Money_CR.Price
sql.Add(' where YFTypeId='''+Trim(Order_Main10.fieldbyname('Mainid').AsString)+'''');
ExecSQL;
end;
{with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty*HuiLv');
sql.Add(' where YFID='''+Trim(YFID)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)');
sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)');
sql.Add(' where CRID='+CRID);
ExecSQL;
end;}
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where YFId='''+Trim(YFID)+'''');
Open;
end;
if ADOQueryTemp.FieldByName('Qty').Value=0 then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete from YF_Money_CR where YFID='''+Trim(YFID)+'''');
ExecSQL;
end;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where CRId='+CRID);
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete from YF_Money_KC where CRId='+CRID);
ExecSQL;
end;
end;
//Next;
end;
end;
Result:=True;
end;
procedure TfrmCpCkSaoMNewSel.RKOrdIDKeyPress(Sender: TObject;
var Key: Char);
var
maxno:String;
begin
if Key=#13 then
begin
Label12.Caption:='';
if CDS_Sub.IsEmpty then
begin
BaoID.Text:='';
Application.MessageBox(ѡ<CEB4><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD><EFBFBD>⣡','<27><>ʾ',0);
Exit;
end;
if Trim(CKOrdNo.Text)='' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Trim(CRType.Text)='' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if CDS_Main.Locate('RKOrdId',Trim(RKOrdId.Text),[])=False then
begin
MovePanel1.Visible:=True;
Edit2.Text:=Trim(RKOrdId.Text);
Label12.Caption:='<27><><EFBFBD>ѣ<EFBFBD><D1A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>';
RKOrdId.Text:='';
// Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2B5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>','<27><>ʾ',0);
Exit;
end;
//CDS_Main.Locate('MJId',Trim(BaoID.Text),[]);
MovePanel2.Visible:=True;
MovePanel2.Refresh;
InitPrice();
try
ADOQueryCmd.Connection.BeginTrans;
with CDS_Main do
begin
First;
while CDS_Main.Locate('RKOrdId',Trim(RKOrdId.Text),[])=True do
begin
if GetLSNo(ADOQueryCmd,maxno,'CC','CK_BanCp_CR',4,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from CK_BanCp_CR where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('BCID').Value:=Trim(maxno);
FieldByName('CRID').Value:=CDS_Main.fieldbyname('CRID').Value;
FieldByName('CRTime').Value:=SGetServerDateTime(ADOQueryTemp);
FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value;
FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value;
FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value;
FieldByName('MJID').Value:=CDS_Main.fieldbyname('MJID').Value;
FieldByName('MainID').Value:=CDS_Main.fieldbyname('MainID').Value;
FieldByName('SubID').Value:=CDS_Main.fieldbyname('SubID').Value;
FieldByName('APID').Value:=CDS_Main.fieldbyname('APID').Value;
FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value;
FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value;
FieldByName('BaoID').Value:=CDS_Main.fieldbyname('BaoID').Value;
FieldByName('RKPlace').Value:=CDS_Main.fieldbyname('RKPlace').AsString;
FieldByName('Filler').Value:=Trim(DName);
FieldByName('CRFlag').Value:='<27><><EFBFBD><EFBFBD>';
FieldByName('CRType').Value:=trim(CRType.Text);
FieldByName('CRNote').Value:=Trim(CRNote.Text);
FieldByName('CKOrdNo').Value:=Trim(CKOrdNo.Text);
//FieldByName('JZXNo').Value:=Trim(JZXNo.Text);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_BanCp_KC set KCKgQty=0,KCQty=0 where CRID='+CDS_Main.fieldbyname('CRID').AsString);
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update WFB_MJJY Set MJStr2=''<27>ѳ<EFBFBD><D1B3><EFBFBD>'' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+'''');
ExecSQL;
end;
{if YSData(CDS_Main)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end; }
if CDSPrice.Locate('MainId',Trim(CDS_Main.fieldbyname('MainId').AsString),[])=False then
begin
CDSPrice.Append;
CDSPrice.FieldByName('MainId').Value:=Trim(CDS_Main.fieldbyname('MainId').AsString);
CDSPrice.FieldByName('KHName').Value:=Trim(CDS_Main.fieldbyname('KHName').AsString);
//CDS_Sub.Locate('MainId',Trim(CDS_Main.fieldbyname('MainId').AsString),[]);
{if Trim(CDS_Sub.fieldbyname('OrderUnit').AsString)<>'Kg' then
begin
CDSPrice.FieldByName('JLUnit').Value:='M';
end else
begin
CDSPrice.FieldByName('JLUnit').Value:='Kg';
end; }
CDSPrice.Post;
end;
with CDS_MainSel do
begin
Append;
FieldByName('MainId').Value:=CDS_Main.fieldbyname('MainId').Value;
FieldByName('SubId').Value:=Self.CDS_Main.fieldbyname('SubId').Value;
FieldByName('OrderNo').Value:=Self.CDS_Main.fieldbyname('OrderNo').Value;
FieldByName('KGQty').Value:=Self.CDS_Main.fieldbyname('KGQty').Value;
FieldByName('Qty').Value:=Self.CDS_Main.fieldbyname('Qty').Value;
FieldByName('QtyUnit').Value:=Self.CDS_Main.fieldbyname('QtyUnit').Value;
FieldByName('MJId').Value:=Self.CDS_Main.fieldbyname('MJId').Value;
FieldByName('CRId').Value:=Self.CDS_Main.fieldbyname('CRId').Value;
FieldByName('APID').Value:=Self.CDS_Main.fieldbyname('APID').Value;
FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value;
FieldByName('BCID').Value:=Trim(maxno);
FieldByName('PRTColor').Value:=Self.CDS_Main.fieldbyname('PRTColor').Value;
FieldByName('MJXH').Value:=Self.CDS_Main.fieldbyname('MJXH').Value;
FieldByName('AOrdDefstr1').Value:=CDS_Main.fieldbyname('AOrdDefstr1').Value;
FieldByName('KHName').Value:=CDS_Main.fieldbyname('KHName').Value;
FieldByName('RKOrdId').Value:=CDS_Main.fieldbyname('RKOrdId').Value;
FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value;
//FieldByName('JZXNo').Value:=Trim(JZXNo.Text);
Post;
end;
CDS_Main.Delete;
end;
end;
{ with CDSPrice do
begin
First;
while not Eof do
begin
if YSData(CDSPrice)=False then
begin
MovePanel2.Visible:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
Next;
end;
end;
}
ADOQueryCmd.Connection.CommitTrans;
{ MovePanel1.Visible:=True;
if CDS_MainSel.IsEmpty=False then
Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2])
else
Edit1.Text:='0';
Edit2.Text:=Trim(RKOrdID.Text); }
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select PrtOrderQty,OrderUnit,yd=dbo.F_Get_YD(MainID) from JYOrder_sub ');
sql.Add('where subID='''+trim(CDS_MainSel.fieldbyname('SubId').AsString)+''' ');
open;
end;
OrderNum:= ADOQueryTemp.fieldbyname('PrtOrderQty').AsFloat;
yd:=ADOQueryTemp.fieldbyname('yd').AsInteger;
fOrderUnit:=trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString);
IF (yd>0.0) and (OrderNum>0) then
begin
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select sum(A.Qty)as Qty,sum(B.MjQty4) as KGQty from CK_BanCP_CR A ');
sql.Add('inner join WFB_MJJY B on B.MJID=A.MJID ');
sql.Add('where A.subID='''+trim(CDS_MainSel.fieldbyname('SubId').AsString)+''' ');
sql.Add('and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
open;
end;
IF (((ADOQueryTemp.fieldbyname('KGQty').AsFloat-OrderNum)/OrderNum*100.00)>yd) and (Uppercase(fOrderUnit)='KG') then
begin
application.MessageBox('<27>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_ICONERROR);
exit;
end
else
IF (((ADOQueryTemp.fieldbyname('Qty').AsFloat-OrderNum)/OrderNum*100.00)>yd) and (Uppercase(fOrderUnit)<>'KG') then
begin
application.MessageBox('<27>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_ICONERROR);
exit;
end;
end;
RKOrdID.Text:='';
MovePanel2.Visible:=False;
Exit;
except
RKOrdID.Text:='';
MovePanel2.Visible:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>','<27><>ʾ',0);
end;
end;
end;
procedure TfrmCpCkSaoMNewSel.baoKeyPress(Sender: TObject; var Key: Char);
var
maxno:String;
begin
if Key=#13 then
begin
Label12.Caption:='';
if CDS_Sub.IsEmpty then
begin
Bao.Text:='';
Application.MessageBox(ѡ<CEB4><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD><EFBFBD>⣡','<27><>ʾ',0);
Exit;
end;
if Trim(bao.Text)='' then
begin
Application.MessageBox('<27><><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Trim(CKOrdNo.Text)='' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Trim(CRType.Text)='' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if CDS_Main.Locate('baoID',Trim(bao.Text),[])=False then
begin
MovePanel1.Visible:=True;
Edit2.Text:=Trim(bao.Text);
Label12.Caption:='<27><><EFBFBD>ѣ<EFBFBD><D1A3>˰<EFBFBD><CBB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>';
bao.Text:='';
// Application.MessageBox('<27>˰<EFBFBD><CBB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>','<27><>ʾ',0);
Exit;
end;
// CDS_Main.Locate('baoID',Trim(bao.Text),[]);
try
ADOQueryCmd.Connection.BeginTrans;
with CDS_Main do
begin
first;
while CDS_Main.Locate('baoID',Trim(bao.Text),[]) do
begin
if GetLSNo(ADOQueryCmd,maxno,'CC','CK_BanCp_CR',4,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from CK_BanCp_CR where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('BCID').Value:=Trim(maxno);
FieldByName('CRID').Value:=CDS_Main.fieldbyname('CRID').Value;
FieldByName('CRTime').Value:=SGetServerDateTime(ADOQueryTemp);
FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').Value;
FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').Value;
FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value;
FieldByName('MJID').Value:=CDS_Main.fieldbyname('MJID').Value;
FieldByName('MainID').Value:=CDS_Main.fieldbyname('MainID').Value;
FieldByName('SubID').Value:=CDS_Main.fieldbyname('SubID').Value;
FieldByName('APID').Value:=CDS_Main.fieldbyname('APID').Value;
FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value;
FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value;
FieldByName('BaoID').Value:=CDS_Main.fieldbyname('BaoID').Value;
FieldByName('RKPlace').Value:=CDS_Main.fieldbyname('RKPlace').AsString;
FieldByName('Filler').Value:=Trim(DName);
FieldByName('CRFlag').Value:='<27><><EFBFBD><EFBFBD>';
FieldByName('CRType').Value:=trim(CRType.Text);
FieldByName('CKOrdNo').Value:=Trim(CKOrdNo.Text);
FieldByName('CRNote').Value:=Trim(CRNote.Text);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_BanCp_KC set KCKgQty=0,KCQty=0 where CRID='+CDS_Main.fieldbyname('CRID').AsString);
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update WFB_MJJY Set MJStr2=''<27>ѳ<EFBFBD><D1B3><EFBFBD>'' where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+'''');
ExecSQL;
end;
{ if YSData(CDS_Main)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end; }
with CDS_MainSel do
begin
Append;
FieldByName('MainId').Value:=CDS_Main.fieldbyname('MainId').Value;
FieldByName('SubId').Value:=Self.CDS_Main.fieldbyname('SubId').Value;
FieldByName('OrderNo').Value:=Self.CDS_Main.fieldbyname('OrderNo').Value;
FieldByName('KGQty').Value:=Self.CDS_Main.fieldbyname('KGQty').Value;
FieldByName('Qty').Value:=Self.CDS_Main.fieldbyname('Qty').Value;
FieldByName('QtyUnit').Value:=Self.CDS_Main.fieldbyname('QtyUnit').Value;
FieldByName('MJId').Value:=Self.CDS_Main.fieldbyname('MJId').Value;
FieldByName('CRId').Value:=Self.CDS_Main.fieldbyname('CRId').Value;
FieldByName('APID').Value:=Self.CDS_Main.fieldbyname('APID').Value;
FieldByName('CPType').Value:=CDS_Main.fieldbyname('CPType').Value;
FieldByName('BCID').Value:=Trim(maxno);
FieldByName('PRTColor').Value:=Self.CDS_Main.fieldbyname('PRTColor').Value;
FieldByName('MJXH').Value:=Self.CDS_Main.fieldbyname('MJXH').Value;
FieldByName('AOrdDefstr1').Value:=CDS_Main.fieldbyname('AOrdDefstr1').Value;
FieldByName('KHName').Value:=CDS_Main.fieldbyname('KHName').Value;
FieldByName('RKOrdId').Value:=CDS_Main.fieldbyname('RKOrdId').Value;
FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value;
//FieldByName('JZXNo').Value:=Trim(JZXNo.Text);
Post;
end;
CDS_Main.Delete;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
{ MovePanel1.Visible:=True;
if CDS_MainSel.IsEmpty=False then
Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2])
else
Edit1.Text:='0';
Edit2.Text:=Trim(bao.Text); }
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select PrtOrderQty,OrderUnit,yd=dbo.F_Get_YD(MainID) from JYOrder_sub ');
sql.Add('where subID='''+trim(CDS_MainSel.fieldbyname('SubId').AsString)+''' ');
open;
end;
OrderNum:= ADOQueryTemp.fieldbyname('PrtOrderQty').AsFloat;
yd:=ADOQueryTemp.fieldbyname('yd').AsInteger;
fOrderUnit:=trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString);
IF (yd>0.0) and (OrderNum>0) then
begin
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select sum(A.Qty)as Qty,sum(B.MjQty4) as KGQty from CK_BanCP_CR A ');
sql.Add('inner join WFB_MJJY B on B.MJID=A.MJID ');
sql.Add('where A.subID='''+trim(CDS_MainSel.fieldbyname('SubId').AsString)+''' ');
sql.Add('and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
open;
end;
IF (((ADOQueryTemp.fieldbyname('KGQty').AsFloat-OrderNum)/OrderNum*100.00)>yd) and (Uppercase(fOrderUnit)='KG') then
begin
application.MessageBox('<27>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_ICONERROR);
exit;
end
else
IF (((ADOQueryTemp.fieldbyname('Qty').AsFloat-OrderNum)/OrderNum*100.00)>yd) and (Uppercase(fOrderUnit)<>'KG') then
begin
application.MessageBox('<27>˶<EFBFBD><CBB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_ICONERROR);
exit;
end;
end;
bao.Text:='';
exit;
except
bao.Text:='';
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>','<27><>ʾ',0);
end;
end;
end;
procedure TfrmCpCkSaoMNewSel.THMJIDKeyPress(Sender: TObject;
var Key: Char);
begin
if Key=#13 then
begin
if CDS_MainSel.IsEmpty then
begin
BaoID.Text:='';
Application.MessageBox(<><CEB4><EFBFBD><EFBFBD><E2B2BB>ɨ<EFBFBD><C9A8><EFBFBD>˻<EFBFBD><CBBB><EFBFBD>','<27><>ʾ',0);
Exit;
end;
if Trim(THMJID.Text)='' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EBB2BB>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if not CDS_MainSel.Locate('MJId',Trim(THMJID.Text),[]) then
begin
BaoID.Text:='';
Application.MessageBox('<27>˾<EFBFBD><CBBE>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD>ڣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
CDS_MainSel.Locate('MJId',Trim(THMJID.Text),[]);
try
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete CK_BanCP_CR where BCID='''+Trim(CDS_MainSel.fieldbyname('BCID').AsString)+'''');
sql.Add('UPdate CK_BanCP_KC Set KCKgQty=(select KgQty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'') ');
sql.Add(',KCQty=(select Qty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'') ');
SQL.Add(' where CRID='+CDS_MainSel.fieldbyname('CRID').AsString);
sql.Add('Update WFB_MJJY Set MJStr2=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' where MJID='''+Trim(CDS_MainSel.fieldbyname('MJID').AsString)+'''');
ExecSQL;
end;
// CDS_Main.DisableControls;
with CDS_Main do
begin
Append;
FieldByName('MainId').Value:=CDS_MainSel.fieldbyname('MainId').Value;
FieldByName('SubId').Value:=Self.CDS_MainSel.fieldbyname('SubId').Value;
FieldByName('OrderNo').Value:=Self.CDS_MainSel.fieldbyname('OrderNo').Value;
FieldByName('KgQty').Value:=Self.CDS_MainSel.fieldbyname('KgQty').Value;
FieldByName('Qty').Value:=Self.CDS_MainSel.fieldbyname('Qty').Value;
FieldByName('QtyUnit').Value:=Self.CDS_MainSel.fieldbyname('QtyUnit').Value;
FieldByName('MJId').Value:=Self.CDS_MainSel.fieldbyname('MJId').Value;
FieldByName('CRId').Value:=Self.CDS_MainSel.fieldbyname('CRId').Value;
FieldByName('APID').Value:=Self.CDS_MainSel.fieldbyname('APID').Value;
FieldByName('CPType').Value:=Self.CDS_MainSel.fieldbyname('CPType').Value;
FieldByName('PRTColor').Value:=Self.CDS_MainSel.fieldbyname('PRTColor').Value;
FieldByName('AOrddefstr1').Value:=Self.CDS_MainSel.fieldbyname('AOrddefstr1').Value;
FieldByName('MJXH').Value:=Self.CDS_MainSel.fieldbyname('MJXH').Value;
FieldByName('KHName').Value:=CDS_MainSel.fieldbyname('KHName').Value;
FieldByName('RKOrdID').Value:=CDS_MainSel.fieldbyname('RKOrdID').Value;
FieldByName('BaoNo').Value:=CDS_MainSel.fieldbyname('BaoNo').Value;
FieldByName('BaoID').Value:=CDS_MainSel.fieldbyname('BaoID').Value;
Post;
end;
CDS_MainSel.Delete;
Edit2.Text:=Trim(THMJID.Text);
THMJID.Text:='';
THMJID.SetFocus;
Exit;
except
THMJID.Text:='';
THMJID.SetFocus;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>','<27><>ʾ',0);
end;
end;
end;
procedure TfrmCpCkSaoMNewSel.N3Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then Exit;
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not Eof do
begin
if Trim(Fieldbyname('CPType').AsString)='<27><>Ʒ' then
begin
Edit;
FieldByName('SSel').Value:=True;
Post;
end
else
begin
Edit;
FieldByName('SSel').Value:=false;
Post;
end;
Next;
end;
end;
CDS_Main.EnableControls;
end;
procedure TfrmCpCkSaoMNewSel.N4Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then Exit;
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not Eof do
begin
if Trim(Fieldbyname('CPType').AsString)='<27><>Ʒ' then
begin
Edit;
FieldByName('SSel').Value:=True;
Post;
end
else
begin
Edit;
FieldByName('SSel').Value:=false;
Post;
end;
Next;
end;
end;
CDS_Main.EnableControls;
end;
procedure TfrmCpCkSaoMNewSel.N5Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then Exit;
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not Eof do
begin
if Trim(Fieldbyname('CPType').AsString)='<27><>ƴ' then
begin
Edit;
FieldByName('SSel').Value:=True;
Post;
end
else
begin
Edit;
FieldByName('SSel').Value:=false;
Post;
end;
Next;
end;
end;
CDS_Main.EnableControls;
end;
end.