D7XHshengfang/盛纺贸易管理/U_CpCkSaoMNewSel.pas
DESKTOP-E401PHE\Administrator 0cb161cfb3 ~
2025-04-30 23:58:03 +08:00

1811 lines
69 KiB
ObjectPascal
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

unit U_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,
dxSkinsCore, dxSkinBlack, dxSkinBlue, dxSkinBlueprint, dxSkinCaramel,
dxSkinCoffee, dxSkinDarkRoom, dxSkinDarkSide, dxSkinDevExpressDarkStyle,
dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans,
dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky,
dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis,
dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black,
dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink,
dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue,
dxSkinOffice2010Silver, dxSkinOffice2013DarkGray,
dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin,
dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus,
dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008,
dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, dxSkinValentine,
dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue, dxSkinscxPCPainter;
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;
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;
v1MJQty4: TcxGridDBColumn;
v3MJQty4: TcxGridDBColumn;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
Label11: TLabel;
CRType: TComboBox;
Label13: TLabel;
v1PRTHX: TcxGridDBColumn;
v3PRTHX: TcxGridDBColumn;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
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 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 MenuItem1Click(Sender: TObject);
private
{ Private declarations }
procedure InitGrid();
procedure InitSubGrid();
function YSData(Order_Main10:TClientDataSet):Boolean;
procedure InitPrice();
function YFData(Order_Main10:TClientDataSet):Boolean;
function HTData(FeeType:string;FeeMoney:double;Order_Main11:TClientDataSet):Boolean;
public
{ Public declarations }
end;
var
frmCpCkSaoMNewSel: TfrmCpCkSaoMNewSel;
implementation
uses
U_DataLink,U_Fun,U_OrderSel,MMSystem ;
{$R *.dfm}
function TfrmCpCkSaoMNewSel.HTData(FeeType:string;FeeMoney:double;Order_Main11:TClientDataSet):Boolean;
var
CRID,OrdMainId,YFID,FComTaiTou,FCRID,FFactoryName,OrderUnit,PriceUnit,FConNo:String;
begin
Result:=False;
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add('select Top 1 A.*,B.ConNo from JYOrderCon_Sub A inner join JYOrderCon_Main B on A.Mainid=B.Mainid Where Subid='''+Trim(Order_Main11.fieldbyname('ConID').AsString)+'''');
Open;
end;
PriceUnit:=Trim(ADOQueryTemp.fieldbyname('PriceUnit').AsString);
OrderUnit:=Trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString);
FConNO:=Trim(ADOQueryTemp.fieldbyname('ConNo').AsString);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select ComTaiTou from JYOrder_Main where Mainid='''+Trim(Order_Main11.fieldbyname('MainId').AsString)+'''');
Open;
end;
FComTaiTou:=Trim(ADOQueryTemp.fieldbyname('ComTaiTou').AsString);
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main11.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_Main11.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_Main11.fieldbyname('KHName').AsString)+'''');
sql.Add(' and YFTypeId='''+Trim(Order_Main11.fieldbyname('ConID').AsString)+'''');
sql.add(' and YFName='''+trim(FeeType)+'''');
sql.add(' and FeeType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>''');
sql.add(' and CRFlag='<><D3A6><EFBFBD><EFBFBD>''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
if GetLSNo(ADOQueryCmd,YFID,'CP','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=2');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('YFID').Value:=Trim(YFID);
FieldByName('YFTypeId').Value:=Trim(Order_Main11.fieldbyname('ConID').AsString);
FieldByName('CRID').Value:=StrToInt(CRID);
FieldByName('Filler').Value:=Trim(DName);
FieldByName('status').Value:='0';
FieldByName('CRType').Value:=<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>';
FieldByName('CRFlag').Value:=<><D3A6><EFBFBD><EFBFBD>';
FieldByName('QtyFlag').Value:=1;
FieldByName('FactoryName').Value:=Trim(Order_Main11.fieldbyname('KHName').AsString);
FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTime.Date));
FieldByName('YFType').Value:='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
fieldbyname('OrderNO').Value:=Trim(Order_Main11.fieldbyname('OrderNo').AsString);
fieldbyname('ConNo').Value:=trim(FConNO);
fieldbyname('PBNote').Value:=trim(CRNote.Text);
//FieldByName('Price').Value:=Order_Main11.fieldbyname('PRTPrice').Value;
FieldByName('HuiLv').Value:=1;
FieldByName('BZType').Value:=trim(PriceUnit);
FieldByName('QtyUnit').Value:=trim(OrderUnit);
FieldByName('ComTaiTou').Value:=Trim(FComTaiTou);
FieldByName('YFName').Value:=trim(FeeType);
fieldbyname('FeeType').Value:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('MainId').Value:=Trim(Order_Main11.fieldbyname('Mainid').AsString);
FieldByName('Conid').Value:=Trim(Order_Main11.fieldbyname('Conid').AsString);
fieldbyname('Money').value:=FeeMoney;
fieldbyname('BBMoney').value:=FeeMoney;
Post;
end;
end else
begin
YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString);
end;
Result:=True;
end;
function TfrmCpCkSaoMNewSel.YFData(Order_Main10:TClientDataSet):Boolean;
var
CRID,OrdMainId,YFID,FComTaiTou,FCRID,FFactoryName,OrderUnit,PriceUnit:String;
begin
Result:=False;
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add('select Top 1 * from JYOrder_Sub Where Subid='''+Trim(Order_Main10.fieldbyname('Subid').AsString)+'''');
Open;
end;
PriceUnit:=Trim(ADOQueryTemp.fieldbyname('PriceUnit').AsString);
OrderUnit:=Trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select ComTaiTou from JYOrder_Main where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+'''');
Open;
end;
FComTaiTou:=Trim(ADOQueryTemp.fieldbyname('ComTaiTou').AsString);
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main10.fieldbyname('YRfactoryName').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('YRfactoryName').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('YRfactoryName').AsString)+'''');
sql.Add(' and YFTypeId='''+Trim(Order_Main10.fieldbyname('Subid').AsString)+'''');
sql.add(' and CRTime='''+Trim(FormatDateTime('yyyy-MM-dd',CRTime.Date))+'''');
sql.add(' and CRFlag='<><D3A6><EFBFBD><EFBFBD>''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
if GetLSNo(ADOQueryCmd,YFID,'CP','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=2');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('YFID').Value:=Trim(YFID);
FieldByName('YFTypeId').Value:=Trim(Order_Main10.fieldbyname('Subid').AsString);
FieldByName('CRID').Value:=StrToInt(CRID);
FieldByName('Filler').Value:=Trim(DName);
FieldByName('status').Value:='0';
FieldByName('CRType').Value:=<><D3A6><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>';
FieldByName('CRFlag').Value:=<><D3A6><EFBFBD><EFBFBD>';
FieldByName('QtyFlag').Value:=1;
FieldByName('FactoryName').Value:=Trim(Order_Main10.fieldbyname('YRfactoryName').AsString);
FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTime.Date));
FieldByName('YFType').Value:='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
fieldbyname('OrderNO').Value:=Trim(Order_Main10.fieldbyname('OrderNo').AsString);
fieldbyname('PBNote').Value:=trim(CRNote.Text);
//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><EFBFBD><EFBFBD>Ǽ<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:='<27><>';
FieldByName('QtyUnit').Value:='KG';
FieldByName('ComTaiTou').Value:=Trim(FComTaiTou);
FieldByName('YFName').Value:='<27><>Ʒ<EFBFBD><C6B7><EFBFBD>޷<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;
sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(A.KgQty),0) from CK_BanCP_CR A ');
sql.Add(' inner join JYOrder_Sub B on A.SubId=B.SubId where');
SQL.Add(' A.Subid=YF_Money_CR.YFTypeId and A.CRType=''<27><><EFBFBD>޳<EFBFBD><DEB3><EFBFBD>'' and CPType=''<27><>Ʒ'' ');
sql.add(' and A.CRTime=YF_Money_CR.CRTime');
SQL.Add(' )');
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.Subid=YF_Money_CR.YFTypeId and A.CRType=''<27><><EFBFBD>޳<EFBFBD><DEB3><EFBFBD>'' and CPType=''<27><>Ʒ''');
sql.add(' and A.CRTime=YF_Money_CR.CRTime');
sql.add(') ');
sql.Add(',JZQty=(select isnull(Sum(MJQty4),0) from CK_BanCP_CR A ');
sql.Add(' inner join WFB_MJJY B on A.MJID=B.MJID where');
SQL.Add(' A.Subid=YF_Money_CR.YFTypeId and A.CRType=''<27><><EFBFBD>޳<EFBFBD><DEB3><EFBFBD>'' and CPType=''<27><>Ʒ'' ');
sql.add(' and A.CRTime=YF_Money_CR.CRTime');
SQL.Add(' )');
sql.Add(',MaoQty=(select isnull(Sum(A.KgQty),0) from CK_BanCP_CR A ');
sql.Add(' inner join JYOrder_Sub B on A.SubId=B.SubId where');
SQL.Add(' A.Subid=YF_Money_CR.YFTypeId and A.CRType=''<27><><EFBFBD>޳<EFBFBD><DEB3><EFBFBD>'' and CPType=''<27><>Ʒ'' ');
sql.add(' and A.CRTime=YF_Money_CR.CRTime');
SQL.Add(' )');
sql.Add(' where YFTypeId='''+Trim(Order_Main10.fieldbyname('Subid').AsString)+'''');
sql.add(' and CRType='<><D3A6><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>''');
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('PS').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;
Result:=True;
end;
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(',PRTHX=cast('''' as varchar(50))');
sql.Add(',AOrdDefstr1=(select AOrdDefstr1 from JYOrder_Sub_AnPai where ApId=A.ApId)');
sql.Add(',MJQty4=(select MJQty4 from WFB_MJJY where MJID=A.MJID)');
sql.Add(',MJXH=(select MJXH from WFB_MJJY where MJID=A.MJID)');
sql.Add(',MJType=(select MJType 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.*,cast('''' as varchar(80)) ConNO,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(',PRTHX=cast('''' as varchar(50))');
sql.Add(',MJQty4=(select MJQty4 from WFB_MJJY where MJID=A.MJID)');
sql.Add(',MJXH=(select MJXH from WFB_MJJY where MJID=A.MJID)');
sql.Add(',MJType=(select MJType from WFB_MJJY where MJID=A.MJID),cast('''' as varchar(50)) YRfactoryName ');
sql.Add('from CK_BanCP_CR A');
sql.add('where 1=2');
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,Subid,KHName=Cast('''' as varchar(50)),Cast('''' as varchar(50)) QtyUnit,');
sql.add('Cast('''' as varchar(50)) OrderNo,Cast('''' as varchar(50)) YRfactoryName,Cast('''' as varchar(50)) ConID from JYOrderCon_Sub where 1=2');
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 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:='';
Exit;
end;
if CDS_Main.Locate('MJId',Trim(BaoID.Text),[])=false then
begin
application.MessageBox('ѡ<><D1A1><EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD>û<EFBFBD>иþ<D0B8><C3BE><EFBFBD>','<27><>ʾ');
exit;
end;
CDS_Main.Locate('MJId',Trim(BaoID.Text),[]);
try
ADOQueryCmd.Connection.BeginTrans;
with CDS_Main do
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_BanCP_CR Set ');
sql.add(' CRTime='''+trim(FormatDateTime('yyyy-MM-dd',CRTime.DateTime))+'''');
sql.Add(',CRType='''+trim(CRType.Text)+''',CRFlag=''<27><><EFBFBD><EFBFBD>''');
sql.Add(',CRNote='''+trim(CRNote.Text)+'''');
sql.Add(',MJXH='''+trim(CDS_Main.fieldbyname('MJXH').AsString)+'''');
SQL.Add(',BaoNo='''+trim(CDS_Main.fieldbyname('BaoNo').AsString)+'''');
SQL.Add(',BaoID='''+trim(CDS_Main.fieldbyname('BaoID').AsString)+'''');
sql.Add(',CKOrdNo='''+trim(CKOrdNo.Text)+'''');
sql.Add(',CRFlagQty=-1');
sql.Add('where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+'''');
sql.Add(' and CRFlag=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>''');
ExecSQL;
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;
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('MJQty4').Value:=self.CDS_Main.fieldbyname('MJQty4').Value;
FieldByName('PRTColor').Value:=Self.CDS_Main.fieldbyname('PRTColor').Value;
FieldByName('PRTHX').Value:=Self.CDS_Main.fieldbyname('PRTHX').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('BaoID').Value:=CDS_Main.fieldbyname('BaoID').Value;
FieldByName('YRfactoryName').Value:=Trim(CDS_Main.fieldbyname('YRfactoryName').AsString);
FieldByName('ConID').Value:=Trim(CDS_Main.fieldbyname('ConID').AsString);
fieldbyname('ConNO').Value:=CDS_Main.fieldbyname('ConNO').AsString;
//FieldByName('JZXNo').Value:=Trim(JZXNo.Text);
Post;
end;
PlaySound('ZTFH.wav', 0, SND_FILENAME or SND_ASYNC);
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);
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
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('ConSubId',Trim(CDS_OrderSel.fieldbyname('ConSubId').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('OrderNoM').AsString);
FieldByName('CustomerNoName').Value:=Trim(CDS_OrderSel.fieldbyname('CustomerNoName').AsString);
FieldByName('MPRTCodeName').Value:=Trim(CDS_OrderSel.fieldbyname('MPRTCodeName').AsString);
FieldByName('PRTOrderQty').Value:=CDS_OrderSel.fieldbyname('PRTOrderQty').AsFloat;
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);
fieldbyname('ConSubid').Value:=trim(CDS_OrderSel.fieldbyname('ConSubid').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('ConSubId').AsString);
Parameters.ParamByName('Dname').Value:=Trim(DCode);
ExecSQL;
end;
Next;
end;
end;
CDS_Sub.EnableControls;
MovePanel2.Visible:=true;
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(D.CustomerNoName,D.CustomerNo) from JYOrderCon_Main D inner Join JYOrderCon_Sub E on E.Mainid=D.Mainid where E.Subid=A.ConID)');
sql.Add(',ConNO=(select isnull(D.ConNO,'''') from JYOrderCon_Main D inner Join JYOrderCon_Sub E on E.Mainid=D.Mainid where E.Subid=A.ConID)');
sql.add(',YRfactoryName=(select R.factoryName from CK_SXPB_CR R where R.SPID=A.APID)');
SQL.Add(',PRTColor=(select PRTColorEng from JYOrder_Sub where SubId=A.SubId)');
SQL.Add(',PRTHX=(select PRTHX from JYOrder_Sub where SubId=A.SubId)');
sql.Add(',AOrdDefstr1=(select MJStr4 from WFB_MJJY where MJID=A.MJID)');
sql.Add(',MJQty4=(select MJQty4 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 ');
sql.Add(' where not exists(select B.MJID from CK_BanCP_CR B where B.MJID=A.MJID and B.CRFlag=''<27><><EFBFBD><EFBFBD>'')');
sql.Add(' and exists(select C.Subid from TBSubID C where C.Subid=A.ConID and C.DName='''+trim(DCode)+''')');
SQL.Add(' and A.CRFlag=''<27><><EFBFBD><EFBFBD>'' ');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_Main);
SInitCDSData20(ADOQueryTemp,CDS_Main);
MovePanel2.Visible:=false;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select A.MainId,A.PRTPrice,A.Subid,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.Subid,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.*,Cast('''' as varchar(60)) ConSubid');
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;
CDS_Main.DisableControls;
with CDS_MainSel do
begin
First;
while Locate('Ssel',True,[]) do
begin
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('MJQty4').Value:=Self.CDS_MainSel.fieldbyname('MJQty4').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('PRTHX').Value:=Self.CDS_MainSel.fieldbyname('PRTHX').Value;
FieldByName('BaoNo').Value:=CDS_MainSel.fieldbyname('BaoNo').Value;
FieldByName('BaoID').Value:=CDS_MainSel.fieldbyname('BaoID').Value;
FieldByName('ConID').Value:=CDS_MainSel.fieldbyname('ConID').Value;
fieldbyname('ConNO').Value:=CDS_MainSel.fieldbyname('ConNO').AsString;
FieldByName('YRfactoryName').Value:=Trim(CDS_Main.fieldbyname('YRfactoryName').AsString);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_BanCP_CR Set CRTime=NULL');
sql.Add(',CRType='''',CRFlag=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>''');
sql.Add(',CRNote=''''');
sql.Add(',CKOrdNo=''''');
sql.Add(',CRFlagQty=0');
SQL.Add(',BaoNo='''',BaoID='''' ');
sql.Add('where MJID='''+Trim(CDS_Main.fieldbyname('MJID').AsString)+'''');
sql.Add(' and CRFlag=''<27><><EFBFBD><EFBFBD>''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update WFB_MJJY Set MJStr2=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' where MJID='''+Trim(CDS_MainSel.fieldbyname('MJID').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.CRFlag=''<27><><EFBFBD><EFBFBD>'') ');
sql.Add(',KCQty=(select Qty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRFlag=''<27><><EFBFBD><EFBFBD>'') ');
sql.Add(' where exists (select MJID from CK_BanCP_CR where MJID=CK_BanCP_KC.MJID and MJID='''+trim(CDS_Main.fieldbyname('MJID').AsString)+''') ');
ExecSQL;
end;
CDS_MainSel.Delete;
end;
end;
CDS_Main.EnableControls;
CDS_MainSel.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
MovePanel1.Visible:=True;
if CDS_MainSel.IsEmpty=False then
Edit1.Text:=IntToStr(Tv3.DataController.Summary.FooterSummaryValues[2])
else
Edit1.Text:='0';
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);
end;
procedure TfrmCpCkSaoMNewSel.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main,False);
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 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;
try
ADOQueryCmd.Connection.BeginTrans;
CDS_Sub.DisableControls;
with CDS_Sub do
begin
First;
while not eof do
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_BanCP_CR Set ');
sql.add(' CRTime='''+trim(FormatDateTime('yyyy-MM-dd',CRTime.DateTime))+'''');
sql.Add(',CRType='''+trim(CRType.Text)+''',CRFlag=''<27><><EFBFBD><EFBFBD>''');
sql.Add(',CRNote='''+trim(CRNote.Text)+'''');
sql.Add(',CKOrdNo='''+trim(CKOrdNo.Text)+'''');
sql.Add(',CRFlagQty=-1');
sql.Add(' where ConID='''+Trim(CDS_Sub.fieldbyname('ConSubid').AsString)+'''');
sql.Add(' and CRFlag=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>''');
sql.Add(' and exists(select A.MJID from WFB_MJJY A where A.MJID=CK_BanCP_CR.MJID and Isnull(A.MJStr2,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'')');
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(D.CustomerNoName,D.CustomerNo) from JYOrderCon_Main D inner Join JYOrderCon_Sub E on E.Mainid=D.Mainid where E.Subid=A.ConID)');
sql.Add(',ConNO=(select isnull(D.ConNO,'''') from JYOrderCon_Main D inner Join JYOrderCon_Sub E on E.Mainid=D.Mainid where E.Subid=A.ConID)');
sql.add(',YRfactoryName=(select R.factoryName from CK_SXPB_CR R where R.SPID=A.APID)');
SQL.Add(',PRTColor=(select PRTColorEng from JYOrder_Sub where SubId=A.SubId)');
SQL.Add(',PRTHX=(select PRTHX from JYOrder_Sub where SubId=A.SubId)');
sql.Add(',AOrdDefstr1=(select MJStr4 from WFB_MJJY where MJID=A.MJID)');
sql.Add(',MJQty4=(select MJQty4 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 1=2 ');
Open;
end;
SCreateCDS20(Self.ADOQueryTemp,CDS_Main);
SInitCDSData20(Self.ADOQueryTemp,CDS_Main);
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_BanCp_KC set KCKgQty=0,KCQty=0 ');
sql.Add('where exists (select MJID from CK_BanCp_CR where MJID=CK_BanCp_KC.MJID and CKOrdNo='''+trim(CKOrdNo.Text)+''')');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update WFB_MJJY Set MJStr2=''<27>ѳ<EFBFBD><D1B3><EFBFBD>'' ');
sql.Add('where exists (select MJID from CK_BanCp_CR where MJID=WFB_MJJY.MJID and CKOrdNo='''+trim(CKOrdNo.Text)+''')');
ExecSQL;
end;
with self.ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_BanCP_CR Set ');
SQL.Add('BaoNo=(select A.BaoNo from WFB_MJJY A where A.MJID=CK_BanCP_CR.MJID)');
SQL.Add(',BaoID=(select A.BaoID from WFB_MJJY A where A.MJID=CK_BanCP_CR.MJID)');
sql.Add(' where CKOrdNo='''+Trim(CKOrdNo.Text)+'''');
ExecSQL;
end;
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(D.CustomerNoName,D.CustomerNo) from JYOrderCon_Main D inner Join JYOrderCon_Sub E on E.Mainid=D.Mainid where E.Subid=A.ConID)');
sql.Add(',ConNO=(select isnull(D.ConNO,'''') from JYOrderCon_Main D inner Join JYOrderCon_Sub E on E.Mainid=D.Mainid where E.Subid=A.ConID)');
sql.add(',YRfactoryName=(select R.factoryName from CK_SXPB_CR R where R.SPID=A.APID)');
SQL.Add(',PRTColor=(select PRTColorEng from JYOrder_Sub where SubId=A.SubId)');
SQL.Add(',PRTHX=(select PRTHX from JYOrder_Sub where SubId=A.SubId)');
sql.Add(',AOrdDefstr1=(select MJStr4 from WFB_MJJY where MJID=A.MJID)');
sql.Add(',MJQty4=(select MJQty4 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 A.CKOrdNo='''+trim(CKOrdNo.text)+''' ');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_MainSel);
SInitCDSData20(ADOQueryTemp,CDS_MainSel);
ADOQueryCmd.Connection.CommitTrans;
MovePanel2.Visible:=False;
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,FConNo,FOrderNo:String;
FPRTPrice:double;
begin
Result:=False;
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add('select Top 1 A.*,B.ConNo from JYOrderCon_Sub A inner join JYOrderCon_Main B on A.Mainid=B.Mainid Where Subid='''+Trim(Order_Main10.fieldbyname('ConID').AsString)+'''');
Open;
end;
PriceUnit:=Trim(ADOQueryTemp.fieldbyname('PriceUnit').AsString);
OrderUnit:=Trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString);
FPRTPrice:=ADOQueryTemp.fieldbyname('PRTPrice').AsCurrency;
FConNO:=Trim(ADOQueryTemp.fieldbyname('ConNo').AsString);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select ComTaiTou,OrderNo from JYOrder_Main where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+'''');
Open;
end;
FComTaiTou:=Trim(ADOQueryTemp.fieldbyname('ComTaiTou').AsString);
FOrderNo:=trim(ADOQueryTemp.fieldbyname('OrderNo').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('ConID').AsString)+'''');
sql.add(' and CRTime='''+Trim(FormatDateTime('yyyy-MM-dd',CRTime.Date))+'''');
sql.add(' and CRFlag='<><D3A6><EFBFBD><EFBFBD>''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
if GetLSNo(ADOQueryCmd,YFID,'CPS','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=2');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('YFID').Value:=Trim(YFID);
FieldByName('YFTypeId').Value:=Trim(Order_Main10.fieldbyname('ConID').AsString);
FieldByName('CRID').Value:=StrToInt(CRID);
FieldByName('Filler').Value:=Trim(DName);
FieldByName('status').Value:='0';
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('OrderNO').Value:=Trim(FOrderNo);
fieldbyname('ConNo').Value:=trim(FConNO);
fieldbyname('PBNote').Value:=trim(CRNote.Text);
FieldByName('Price').Value:=FPRTPrice;
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;}
if trim(PriceUnit)<>'' then
FieldByName('BZType').Value:=trim(PriceUnit)
else
FieldByName('BZType').Value:='<27><>';
if trim(OrderUnit)<>'' then
FieldByName('QtyUnit').Value:=Trim(OrderUnit)
else
FieldByName('QtyUnit').Value:=Trim(Order_Main10.fieldbyname('QtyUnit').AsString);
FieldByName('ComTaiTou').Value:=Trim(FComTaiTou);
FieldByName('YFName').Value:='<27><>Ʒ<EFBFBD><C6B7><EFBFBD>۽<EFBFBD><DBBD><EFBFBD>';
FieldByName('MainId').Value:=Trim(Order_Main10.fieldbyname('Mainid').AsString);
FieldByName('Conid').Value:=Trim(Order_Main10.fieldbyname('Conid').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(' where A.ConID=YF_Money_CR.YFTypeId and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and CPType=''<27><>Ʒ'' ');
sql.add(' and A.CRTime=YF_Money_CR.CRTime ');
SQL.Add(' )');
sql.Add(',PS=(select isnull(count(*),0) from CK_BanCP_CR A where');
SQL.Add(' A.ConID=YF_Money_CR.YFTypeId and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and CPType=''<27><>Ʒ''');
sql.add(' and A.CRTime=YF_Money_CR.CRTime');
sql.add(') ');
sql.Add(',JZQty=(select isnull(Sum(MJQty4),0) from CK_BanCP_CR A ');
sql.add(' inner join WFB_MJJY D on D.MJID=A.MJID where');
SQL.Add(' A.ConID=YF_Money_CR.YFTypeId and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and CPType=''<27><>Ʒ'' ');
sql.add(' and A.CRTime=YF_Money_CR.CRTime');
SQL.Add(' )');
sql.Add(',MaoQty=(select isnull(Sum(A.KgQty),0) from CK_BanCP_CR A where');
SQL.Add(' A.ConID=YF_Money_CR.YFTypeId and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and CPType=''<27><>Ʒ'' ');
sql.add(' and A.CRTime=YF_Money_CR.CRTime');
SQL.Add(' )');
sql.Add(',MQty=(select isnull(Sum(A.Qty),0) from CK_BanCP_CR A where');
SQL.Add(' A.ConID=YF_Money_CR.YFTypeId and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and CPType=''<27><>Ʒ'' ');
sql.add(' and A.CRTime=YF_Money_CR.CRTime');
SQL.Add(' )');
sql.Add(' where YFTypeId='''+Trim(Order_Main10.fieldbyname('ConID').AsString)+'''');
sql.add(' and CRType='<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.add('update YF_Money_CR Set Money=Qty*Price,BBMoney=Price*Qty*HuiLv ');
sql.add('where YFTypeId='''+Trim(Order_Main10.fieldbyname('ConID').AsString)+'''');
sql.add(' and CRType='<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>''');
execsql;
end;
with ADOQueryTemp 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('PS').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;
with ADOQueryPrice do
begin
close;
sql.Clear;
sql.Add('select * from JYOrderCon_Sub ');
sql.Add('where Subid='''+Trim(Order_Main10.fieldbyname('Conid').AsString)+'''');
open;
end;
if ADOQueryPrice.FieldByName('ZhenZhiSJFee').AsFloat<>0 then
HTData('<27><>֯<EFBFBD>ϻ<EFBFBD><CFBB><EFBFBD>',ADOQueryPrice.FieldByName('ZhenZhiSJFee').AsFloat,Order_Main10);
if ADOQueryPrice.FieldByName('YinHuaSJFee').AsFloat<>0 then
HTData(<><D3A1><EFBFBD>ϻ<EFBFBD><CFBB><EFBFBD>',ADOQueryPrice.FieldByName('YinHuaSJFee').AsFloat,Order_Main10);
if ADOQueryPrice.FieldByName('BaoGangFee').AsFloat<>0 then
HTData('<27><><EFBFBD>׷<EFBFBD>',ADOQueryPrice.FieldByName('BaoGangFee').AsFloat,Order_Main10);
if ADOQueryPrice.FieldByName('ZhiWangZhiBanFee').AsFloat<>0 then
HTData('<27><><EFBFBD><EFBFBD><EFBFBD>ư<EFBFBD><C6B0><EFBFBD>',ADOQueryPrice.FieldByName('ZhiWangZhiBanFee').AsFloat,Order_Main10);
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 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:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
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);
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 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:='';
Exit;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with CDS_Main do
begin
first;
while CDS_Main.Locate('baoID',Trim(bao.Text),[]) do
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_BanCP_CR Set ');
sql.add(' CRTime='''+trim(FormatDateTime('yyyy-MM-dd',CRTime.DateTime))+'''');
sql.Add(',CRType='''+trim(CRType.Text)+''',CRFlag=''<27><><EFBFBD><EFBFBD>''');
sql.Add(',CRNote='''+trim(CRNote.Text)+'''');
sql.Add(',MJXH='''+trim(CDS_Main.fieldbyname('MJXH').AsString)+'''');
sql.Add(',BaoNo='''+trim(CDS_Main.fieldbyname('BaoNo').AsString)+'''');
sql.Add(',BaoID='''+trim(CDS_Main.fieldbyname('BaoID').AsString)+'''');
sql.Add(',CKOrdNo='''+trim(CKOrdNo.Text)+'''');
sql.Add(',CRFlagQty=-1');
sql.Add('where Baoid='''+Trim(CDS_Main.fieldbyname('Baoid').AsString)+'''');
sql.Add(' and CRFlag=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>''');
ExecSQL;
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;
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('MJQty4').Value:=Self.CDS_Main.fieldbyname('MJQty4').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('PRTHX').Value:=Self.CDS_Main.fieldbyname('PRTHX').Value;
FieldByName('RKOrdId').Value:=CDS_Main.fieldbyname('RKOrdId').Value;
FieldByName('BaoNo').Value:=CDS_Main.fieldbyname('BaoNo').Value;
FieldByName('BaoID').Value:=CDS_Main.fieldbyname('BaoID').Value;
FieldByName('YRfactoryName').Value:=Trim(CDS_Main.fieldbyname('YRfactoryName').AsString);
FieldByName('Conid').Value:=CDS_Main.fieldbyname('Conid').AsString;
fieldbyname('ConNO').Value:=CDS_Main.fieldbyname('ConNO').AsString;
Post;
end;
PlaySound('ZTFH.wav', 0, SND_FILENAME or SND_ASYNC);
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);
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.CRFlag=''<27><><EFBFBD><EFBFBD>'') ');
sql.Add(',KCQty=(select Qty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRFlag=''<27><><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.MenuItem1Click(Sender: TObject);
var
FMainid:String;
begin
if CDS_MainSel.IsEmpty then Exit;
if Application.MessageBox(<><C8B7>Ҫִ<D2AA>д˲<D0B4><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
MovePanel2.Visible:=True;
MovePanel2.Refresh;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update WFB_MJJY Set MJStr2=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' where ');
sql.Add('exists (select MJID from CK_BanCP_CR where MJID=WFB_MJJY.MJID and CKOrdNo='''+trim(CKOrdNo.Text)+''') ');
sql.Add('UPdate CK_BanCP_CR set CRFlag=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'',CRFlagQty=0 where CKOrdNo='''+Trim(CKOrdNo.Text)+''' ');
sql.Add('UPdate CK_BanCP_KC Set KCKgQty=(select KgQty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRFlag=''<27><><EFBFBD><EFBFBD>'') ');
sql.Add(',KCQty=(select Qty from CK_BanCP_CR A where A.CRID=CK_BanCP_KC.CRID and A.CRFlag=''<27><><EFBFBD><EFBFBD>'') ');
sql.Add(' where exists (select MJID from CK_BanCP_CR where MJID=CK_BanCP_KC.MJID and CKOrdNo='''+trim(CKOrdNo.Text)+''') ');
ExecSQL;
end;
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(D.CustomerNoName,D.CustomerNo) from JYOrderCon_Main D inner Join JYOrderCon_Sub E on E.Mainid=D.Mainid where E.Subid=A.ConID)');
sql.Add(',ConNO=(select isnull(D.ConNO,'''') from JYOrderCon_Main D inner Join JYOrderCon_Sub E on E.Mainid=D.Mainid where E.Subid=A.ConID)');
sql.add(',YRfactoryName=(select R.factoryName from CK_SXPB_CR R where R.SPID=A.APID)');
SQL.Add(',PRTColor=(select PRTColorEng from JYOrder_Sub where SubId=A.SubId)');
SQL.Add(',PRTHX=(select PRTHX from JYOrder_Sub where SubId=A.SubId)');
sql.Add(',AOrdDefstr1=(select MJStr4 from WFB_MJJY where MJID=A.MJID)');
sql.Add(',MJQty4=(select MJQty4 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.conID and AA.DName='''+Trim(DCode)+''')');
SQL.Add(' and A.CRFlag=''<27><><EFBFBD><EFBFBD>'' ');
sql.Add(' and not exists(select BA.MJID from CK_BanCP_CR BA where BA.MJID=A.MJID and BA.CRFlag=''<27><><EFBFBD><EFBFBD>'')');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_Main);
SInitCDSData20(ADOQueryTemp,CDS_Main);
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(D.CustomerNoName,D.CustomerNo) from JYOrderCon_Main D inner Join JYOrderCon_Sub E on E.Mainid=D.Mainid where E.Subid=A.ConID)');
sql.Add(',ConNO=(select isnull(D.ConNO,'''') from JYOrderCon_Main D inner Join JYOrderCon_Sub E on E.Mainid=D.Mainid where E.Subid=A.ConID)');
sql.add(',YRfactoryName=(select R.factoryName from CK_SXPB_CR R where R.SPID=A.APID)');
SQL.Add(',PRTColor=(select PRTColorEng from JYOrder_Sub where SubId=A.SubId)');
SQL.Add(',PRTHX=(select PRTHX from JYOrder_Sub where SubId=A.SubId)');
sql.Add(',AOrdDefstr1=(select MJStr4 from WFB_MJJY where MJID=A.MJID)');
sql.Add(',MJQty4=(select MJQty4 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 1=2 ');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_MainSel);
SInitCDSData20(ADOQueryTemp,CDS_MainSel);
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_BanCP_CR Set ');
sql.add(' CRTime=NULL');
sql.Add(',CRType='''',CRFlag=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>''');
sql.Add(',CRNote=''''');
SQL.Add(',CKOrdNo='''' ');
sql.Add(',CRFlagQty=0');
sql.Add(',BaoID='''',BaoNo='''' ');
sql.Add('where CKOrdNo='''+trim(CKOrdNo.Text)+'''');
ExecSQL;
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';
MovePanel2.Visible:=False;
Exit;
except
MovePanel2.Visible:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>','<27><>ʾ',0);
end;
end;
end.