D7FZaideng/成品仓库/U_BpCk.pas
DESKTOP-E401PHE\Administrator 82c6347dad ~
2025-04-30 16:21:22 +08:00

1807 lines
60 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_BpCk;
interface
uses
Windows, Messages, SysUtils, StrUtils, Variants, Classes, Graphics, Controls,
Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxGridLevel, cxClasses, cxControls, cxGridCustomView,
cxGrid, StdCtrls, ComCtrls, ExtCtrls, ToolWin, cxButtonEdit, cxDropDownEdit,
DBClient, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, BtnEdit, cxContainer,
cxTextEdit, cxCurrencyEdit, 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
TfrmbpCk = class(TForm)
ToolBar1: TToolBar;
TBSave: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
Label1: TLabel;
CRTime: TDateTimePicker;
Label2: TLabel;
CRType: TComboBox;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1P_CodeName: TcxGridDBColumn;
v1P_SPEC: TcxGridDBColumn;
v1Qty: TcxGridDBColumn;
v1Note: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
ADOQueryCmd: TADOQuery;
ADOQueryTmp: TADOQuery;
DataSource1: TDataSource;
CDS_Main: TClientDataSet;
ToolBar2: TToolBar;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
cxGridPopupMenu1: TcxGridPopupMenu;
Label3: TLabel;
ToCustName: TBtnEditA;
v1MJID: TcxGridDBColumn;
v1MJXH: TcxGridDBColumn;
v1CPType: TcxGridDBColumn;
ckName: TComboBox;
Label4: TLabel;
Label5: TLabel;
orderNO: TBtnEditA;
Label6: TLabel;
PRTCodeName: TEdit;
Label7: TLabel;
PRTColor: TEdit;
v1P_Code: TcxGridDBColumn;
Label8: TLabel;
InoutNo: TEdit;
Label9: TLabel;
custName: TBtnEditA;
ToolButton3: TToolButton;
Panel2: TPanel;
Label10: TLabel;
Edit1: TEdit;
Label11: TLabel;
IsYjx: TCheckBox;
Label12: TLabel;
v1Price: TcxGridDBColumn;
v1Money: TcxGridDBColumn;
YjxYG: TBtnEditA;
Label13: TLabel;
Yjxdate: TDateTimePicker;
Label14: TLabel;
PackFee: TcxCurrencyEdit;
YbFee: TcxCurrencyEdit;
Label15: TLabel;
OtherFee: TcxCurrencyEdit;
Label16: TLabel;
Panel3: TPanel;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridLevel1: TcxGridLevel;
v2Column2: TcxGridDBColumn;
ADO_Sub: TADOQuery;
DataSource2: TDataSource;
Label17: TLabel;
QtyMX: TEdit;
CDS_Sub: TClientDataSet;
Label18: TLabel;
XjNum: TcxCurrencyEdit;
FHAddress: TBtnEditC;
Label19: TLabel;
Label20: TLabel;
LXFS: TBtnEditC;
v1Column1: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
IsTax: TCheckBox;
Label21: TLabel;
v2Column1: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
ZsQtyMX: TEdit;
Label22: TLabel;
v1Column4: TcxGridDBColumn;
cxGrid3: TcxGrid;
TV3: TcxGridDBTableView;
TV2Column1: TcxGridDBColumn;
TV2Column2: TcxGridDBColumn;
TV2Column3: TcxGridDBColumn;
TV2Column4: TcxGridDBColumn;
TV2Column5: TcxGridDBColumn;
TV2Column6: TcxGridDBColumn;
TV2Column7: TcxGridDBColumn;
TV2Column8: TcxGridDBColumn;
TV2Column9: TcxGridDBColumn;
TV2Column10: TcxGridDBColumn;
TV2Column11: TcxGridDBColumn;
TV2Column12: TcxGridDBColumn;
TV2Column13: TcxGridDBColumn;
TV3Column1: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
TV3Column2: TcxGridDBColumn;
TV3Column3: TcxGridDBColumn;
TV3Column4: TcxGridDBColumn;
procedure FormDestroy(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure v1P_CodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure ToCustNameBtnClick(Sender: TObject);
procedure orderNOBtnClick(Sender: TObject);
procedure custNameBtnClick(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Panel2DblClick(Sender: TObject);
procedure v1QtyPropertiesEditValueChanged(Sender: TObject);
procedure Tv1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure QtyMXKeyPress(Sender: TObject; var Key: Char);
procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure YjxYGBtnClick(Sender: TObject);
procedure PackFeePropertiesChange(Sender: TObject);
procedure FHAddressBtnUpClick(Sender: TObject);
procedure LXFSBtnUpClick(Sender: TObject);
procedure FHAddressBtnDnClick(Sender: TObject);
procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure TV2Column2PropertiesEditValueChanged(Sender: TObject);
private
procedure InitGrid();
procedure Initsub();
procedure Initsub_1();
function savedate(): Boolean;
procedure SetComboBox();
function YSData(): Boolean;
function SKData(): Boolean;
function YSData_Other(fYFName: string; fmoney: double): Boolean;
procedure GetxjNum();
{ Private declarations }
public
fkeyNO, FCodeName, FCode, FDRCKNO, FDRCKName: string;
FType: integer;
fCKName: string;
{ Public declarations }
end;
var
frmbpCk: TfrmbpCk;
implementation
uses
U_DataLink, U_Fun10, U_ZDYHelp, U_Bpkclist, U_ZdyAttachment, U_ZDYHelpSel;
{$R *.dfm}
function TfrmbpCk.SKData(): Boolean;
var
CRID, YFID, Price, PriceUnit, OrderUnit, FComTaiTou, cust: string;
begin
Result := False;
with ADOQueryTmp do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(custName.Text) + ''' and YFDefFlag1=0 ');
Open;
end;
if not ADOQueryTmp.IsEmpty then
begin
CRID := ADOQueryTmp.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(custName.Text);
FieldByName('ZdyStr1').Value := <><D3A6><EFBFBD><EFBFBD>';
Post;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete from YF_Money_CR ');
sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + '''');
// sql.Add(' and subID='''+Trim(CDS_Main.fieldbyname('CRID').AsString)+'''');
sql.Add(' and YFName=''<27>ֽ<EFBFBD><D6BD>տ<EFBFBD>'' ');
execsql;
end;
with ADOQueryTmp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR ');
sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + '''');
// sql.Add(' and subID='''+Trim(CDS_Main.fieldbyname('CRID').AsString)+'''');
sql.Add(' and YFName=''<27>ֽ<EFBFBD><D6BD>տ<EFBFBD>'' ');
Open;
end;
if ADOQueryTmp.IsEmpty then
begin
if GetLSNo(ADOQueryCmd, YFID, 'FK', 'YF_Money_CR', 4, 1) = False then
begin
Application.MessageBox('ȡӦ<C8A1><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(CDS_Main.fieldbyname('CRNO').AsString);
FieldByName('CRID').Value := StrToInt(CRID);
FieldByName('Filler').Value := Trim(DName);
FieldByName('CRType').Value := '<27>տ<EFBFBD><D5BF>Ǽ<EFBFBD>';
FieldByName('CRFlag').Value := <><D3A6><EFBFBD><EFBFBD>';
FieldByName('QtyFlag').Value := -1;
FieldByName('FactoryName').Value := Trim(custName.Text);
FieldByName('TOFactoryName').Value := '<27><><EFBFBD><EFBFBD>';
FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime));
FieldByName('YFType').Value := '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('Qty').Value := 1;
FieldByName('Price').Value := strtofloatdef(XjNum.Text, 0);
FieldByName('Money').Value := strtofloatdef(XjNum.Text, 0);
FieldByName('BBMoney').Value := strtofloatdef(XjNum.Text, 0);
FieldByName('HuiLv').Value := 1;
FieldByName('BZType').Value := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('QtyUnit').Value := Trim(CDS_Main.fieldbyname('QtyUnit').AsString);
FieldByName('ComTaiTou').Value := Trim(cust);
FieldByName('YFName').Value := '<27>ֽ<EFBFBD><D6BD>տ<EFBFBD>';
FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString);
// FieldByName('subID').Value:=Trim(CDS_Main.fieldbyname('CRID').AsString);
FieldByName('status').Value := '0';
Post;
end;
end
else
begin
YFID := Trim(ADOQueryTmp.fieldbyname('YFID').AsString);
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;
Result := True;
end;
procedure TfrmbpCk.GetxjNum();
begin
if not varisnull(tv1.DataController.Summary.FooterSummaryValues[2]) then
begin
XjNum.Value := tv1.DataController.Summary.FooterSummaryValues[2] + strtofloatdef(PackFee.Text, 0) + strtofloatdef(YbFee.Text, 0) + strtofloatdef(OtherFee.Text, 0);
end
else
begin
XjNum.Value := strtofloatdef(PackFee.Text, 0) + strtofloatdef(YbFee.Text, 0) + strtofloatdef(OtherFee.Text, 0);
end;
end;
procedure TfrmbpCk.Initsub();
begin
// if CDS_Main.IsEmpty then
// Exit;
// try
// with Ado_Sub do
// begin
// close;
// sql.Clear;
// sql.Add('exec P_Get_CP_CK_MX ''' + Cds_main.fieldbyname('P_CodeName').AsString + ''' ,''' + Cds_main.fieldbyname('P_Code').AsString + ''',''' + Cds_main.fieldbyname('CRNO').AsString + ''' ');
// sql.Add(' ,''' + cds_main.fieldbyname('DRCKNO').AsString + ''' ,''' + cds_main.fieldbyname('DRCKName').AsString + ''' ');
// open;
// end;
// SCreateCDS20(Ado_Sub, CDS_Sub);
// SInitCDSData20(Ado_Sub, CDS_Sub);
// finally
// end;
// if CDS_Main.IsEmpty then
// exit;
//
// with Ado_Sub do
// begin
// close;
// sql.Clear;
// sql.Add('select * from CP_InOut_MX A');
// sql.Add('where A.MJID=' + quotedstr(trim(CDS_Main.fieldbyname('MJID').AsString)));
// open;
// end;
// SCreateCDS20(Ado_Sub, CDS_sub);
// SInitCDSData20(Ado_Sub, CDS_sub);
end;
procedure TfrmbpCk.Initsub_1();
begin
try
with self.adoqueryTmp do
begin
close;
sql.Clear;
sql.Add('exec P_Get_CP_CK_MX ''' + Cds_main.fieldbyname('P_CodeName').AsString + ''' ,''' + Cds_main.fieldbyname('P_Code').AsString + ''',''' + Cds_main.fieldbyname('CRNO').AsString + ''' ');
sql.Add(' ,''' + cds_main.fieldbyname('DRCKNO').AsString + ''' ,''' + cds_main.fieldbyname('DRCKName').AsString + ''' ');
open;
end;
SCreateCDS20(adoqueryTmp, CDS_Sub);
SInitCDSData20(adoqueryTmp, CDS_Sub);
finally
end;
end;
function TfrmbpCk.YSData(): Boolean;
var
CRID, YFID, priceUnit: string;
PrtPrice, huilv: double;
begin
Result := False;
priceUnit := 'RMB';
PrtPrice := 0;
huilv := 1;
with ADOQueryTmp do
begin
close;
sql.Clear;
sql.Add('select * from JYOrder_sub ');
sql.Add('where subID=''' + Trim(CDS_Main.fieldbyname('subID').AsString) + '''');
open;
end;
if not ADOQueryTmp.IsEmpty then
begin
priceUnit := ADOQueryTmp.fieldbyname('priceUnit').AsString;
PrtPrice := ADOQueryTmp.fieldbyname('PrtPrice').AsFloat;
huilv := ADOQueryTmp.fieldbyname('huilv').AsFloat;
end;
with ADOQueryTmp do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(custName.Text) + ''' and YFDefFlag1=0 ');
Open;
end;
if not ADOQueryTmp.IsEmpty then
begin
CRID := ADOQueryTmp.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(custName.Text);
FieldByName('ZdyStr1').Value := <><D3A6><EFBFBD><EFBFBD>';
Post;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete from YF_Money_CR ');
sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + '''');
sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + '''');
sql.Add(' and YFName=''<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>'' ');
execsql;
end;
with ADOQueryTmp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR ');
sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + '''');
sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + '''');
sql.Add(' and YFName=''<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>'' ');
Open;
end;
if ADOQueryTmp.IsEmpty then
begin
if GetLSNo(ADOQueryCmd, YFID, 'CS', 'YF_Money_CR', 3, 1) = False then
begin
Application.MessageBox('ȡӦ<C8A1><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(CDS_Main.fieldbyname('CRNO').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(custName.Text);
FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime));
FieldByName('YFType').Value := '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('HuiLv').Value := huilv;
FieldByName('ps').Value := CDS_Main.fieldbyname('RollNum').AsFloat;
FieldByName('Qty').Value := CDS_Main.fieldbyname('Qty').AsFloat;
FieldByName('Price').Value := CDS_Main.fieldbyname('Price').AsFloat;
FieldByName('Money').Value := format('%.2f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]);
FieldByName('BBMoney').Value := format('%.2f', [FieldByName('Money').AsFloat * FieldByName('HuiLv').AsFloat]);
FieldByName('ISTAX').Value := IsTax.Checked;
FieldByName('BZType').Value := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('QtyUnit').Value := Trim(CDS_Main.fieldbyname('QtyUnit').AsString);
FieldByName('ComTaiTou').Value := Trim(custName.Text);
FieldByName('YFName').Value := '<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>';
FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString);
FieldByName('subID').Value := Trim(CDS_Main.fieldbyname('CRID').AsString);
FieldByName('status').Value := '0';
Post;
end;
end
else
begin
YFID := Trim(ADOQueryTmp.fieldbyname('YFID').AsString);
end;
Result := True;
end;
function TfrmbpCk.YSData_Other(fYFName: string; fmoney: double): Boolean;
var
CRID, YFID, Price, PriceUnit, OrderUnit, FComTaiTou, cust: string;
begin
Result := False;
with ADOQueryTmp do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where FactoryName=''' + Trim(custName.Text) + ''' and YFDefFlag1=0 ');
Open;
end;
if not ADOQueryTmp.IsEmpty then
begin
CRID := ADOQueryTmp.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(custName.Text);
FieldByName('ZdyStr1').Value := <><D3A6><EFBFBD><EFBFBD>';
Post;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete from YF_Money_CR ');
sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + '''');
sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + '''');
sql.Add(' and YFName=''' + trim(fYFName) + ''' ');
execsql;
end;
with ADOQueryTmp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR ');
sql.Add(' where MainID=''' + Trim(CDS_Main.fieldbyname('CRNO').AsString) + '''');
sql.Add(' and subID=''' + Trim(CDS_Main.fieldbyname('CRID').AsString) + '''');
sql.Add(' and YFName=''' + trim(fYFName) + ''' ');
Open;
end;
if ADOQueryTmp.IsEmpty then
begin
if GetLSNo(ADOQueryCmd, YFID, 'CS', 'YF_Money_CR', 3, 1) = False then
begin
Application.MessageBox('ȡӦ<C8A1><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(CDS_Main.fieldbyname('CRNO').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(custName.Text);
FieldByName('CRTime').Value := Trim(FormatDateTime('yyyy-MM-dd', CRTime.DateTime));
FieldByName('YFType').Value := '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('Qty').Value := 1;
FieldByName('Price').Value := fmoney;
FieldByName('Money').Value := fmoney;
FieldByName('BBMoney').Value := fmoney;
FieldByName('HuiLv').Value := 1;
FieldByName('BZType').Value := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('QtyUnit').Value := '<27><>';
FieldByName('ComTaiTou').Value := Trim(cust);
FieldByName('YFName').Value := fYFName;
FieldByName('ISTAX').Value := IsTax.Checked;
FieldByName('MainId').Value := Trim(CDS_Main.fieldbyname('CRNO').AsString);
FieldByName('subID').Value := Trim(CDS_Main.fieldbyname('CRID').AsString);
FieldByName('status').Value := '0';
Post;
end;
end
else
begin
YFID := Trim(ADOQueryTmp.fieldbyname('YFID').AsString);
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;
Result := True;
end;
procedure TfrmbpCk.SetComboBox();
begin
ckName.Items.Clear;
with adoQueryTmp do
begin
close;
sql.Clear;
sql.Add('select * from KH_ZDY where Type=''CPCK'' ');
if trim(fCKName) <> '' then
sql.Add('and zdyName=' + quotedstr(trim(fCKName)));
open;
while not eof do
begin
ckName.Items.Add(trim(fieldbyname('zdyName').AsString));
next;
end;
end;
if ckName.Items.Count > 0 then
ckName.ItemIndex := 0;
CRType.Items.Clear;
with adoQueryTmp do
begin
close;
sql.Clear;
sql.Add('select * from KH_ZDY where Type=''CPCKTYPE''');
if trim(fCKName) <> '' then
sql.Add('and note=' + quotedstr(trim(fCKName)));
open;
while not eof do
begin
CRType.Items.Add(trim(fieldbyname('zdyName').AsString));
next;
end;
end;
if CRType.Items.Count > 0 then
CRType.ItemIndex := 0;
end;
function TfrmbpCk.savedate(): Boolean;
var
fkcID, XHNO, i: integer;
Filler, FSize: string;
FillTime: TdateTime;
maxno: string;
begin
result := false;
try
ADOQueryCmd.Connection.BeginTrans;
if FType = 0 then
begin
Filler := DName;
FillTime := SGetServerDateTime(adoqueryTmp);
end
else
begin
with adoqueryTmp do
begin
close;
sql.Clear;
sql.Add('select * from CP_InOut');
sql.Add('where CRNO=' + quotedstr(trim(fkeyNO)));
open;
Filler := adoqueryTmp.fieldbyname('Filler').AsString;
FillTime := adoqueryTmp.fieldbyname('FillTime').AsDateTime;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('delete from YF_Money_CR ');
sql.Add('where MAINid=' + quotedstr(trim(fkeyNO)));
execsql;
end;
end;
{ with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update CP_kc set RollNum=A.RollNum + B.RollNum, Qty=A.Qty + B.Qty ');
sql.Add('from CP_kc A');
sql.Add('inner join CP_INout B on B.kcid=A.kcid');
sql.Add('where B.CRNO='+quotedstr(trim(fkeyNO)));
execsql;
end; }
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('delete from CP_INout');
sql.Add('where CRNO=' + quotedstr(trim(fkeyNO)));
execsql;
end;
CDS_Main.DisableControls;
CDS_Main.First;
XHNO := 1;
with CDS_Main do
begin
while not eof do
begin
Edit;
FieldByName('CRNO').Value := trim(fkeyNO);
// FieldByName('CRID').Value := recNo;
post;
{ IF trim(CRType.Text)='<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>'then
begin
with ADOQueryTmp do
begin
close;
sql.Clear;
sql.Add('select sum(RollNum) as RollNum,sum(Qty) as Qty from CP_InOut_MX');
sql.Add('where MJID='+quotedstr(trim(CDS_main.fieldbyname('MJID').AsString)));
open;
end;
IF ADOQueryTmp.IsEmpty then
begin
CDS_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox('<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EBB5A5><EFBFBD>ݣ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
exit;
end
else
begin
IF ADOQueryTmp.fieldbyname('RollNum').AsFloat<> CDS_main.fieldbyname('RollNum').AsFloat then
begin
CDS_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EBB5A5>ƥ<EFBFBD><C6A5><EFBFBD>͵<EFBFBD><CDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD>һ<EFBFBD>£<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
exit;
end;
IF ADOQueryTmp.fieldbyname('Qty').AsFloat<> CDS_main.fieldbyname('Qty').AsFloat then
begin
CDS_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EBB5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><CDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>£<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
exit;
end;
end;
end;
}
with CDS_Sub do
begin
First;
while not eof do
begin
i := 1;
while i < 16 do
begin
FSize := 'Size' + IntToStr(i);
if StrToFloatDef(CDS_Sub.fieldbyname(FSize).AsString, 0) > 0 then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from CP_INout');
sql.Add('where 1=2 ');
open;
end;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('CRNO').Value := trim(fkeyNO);
ADOQueryCmd.FieldByName('CRID').Value := XHNO;
ADOQueryCmd.FieldByName('CKName').Value := trim(CKName.Text);
ADOQueryCmd.FieldByName('InoutNO').Value := trim(InoutNO.Text);
ADOQueryCmd.FieldByName('custNo').Value := trim(custName.TxtCode);
ADOQueryCmd.FieldByName('custName').Value := trim(custName.Text);
// ADOQueryCmd.FieldByName('TocustNo').Value:=trim(TocustName.TxtCode);
// ADOQueryCmd.FieldByName('TocustName').Value:=trim(TocustName.Text);
ADOQueryCmd.FieldByName('FHAddress').Value := trim(FHAddress.Text);
ADOQueryCmd.FieldByName('LXFS').Value := trim(LXFS.Text);
if IsYjx.Checked then
begin
ADOQueryCmd.FieldByName('IsYjx').Value := '<27><>';
ADOQueryCmd.FieldByName('xjNum').Value := strtofloatdef(xjNum.text, 0);
ADOQueryCmd.FieldByName('Yjxdate').Value := formatdateTime('yyyy-MM-dd', Yjxdate.Date);
end
else
ADOQueryCmd.FieldByName('IsYjx').Value := '<27><>';
ADOQueryCmd.FieldByName('YjxYG').Value := trim(YjxYG.Text);
ADOQueryCmd.FieldByName('ISTAX').Value := IsTax.Checked;
// ADOQueryCmd.FieldByName('Yjxdate').Value:=formatdateTime('yyyy-MM-dd',Yjxdate.Date);
ADOQueryCmd.FieldByName('PackFee').Value := floattostr(strtofloatdef(PackFee.Text, 0));
ADOQueryCmd.FieldByName('YbFee').Value := floattostr(strtofloatdef(YbFee.Text, 0));
ADOQueryCmd.FieldByName('otherFee').Value := floattostr(strtofloatdef(otherFee.Text, 0));
ADOQueryCmd.FieldByName('mainID').Value := trim(CDS_Main.fieldbyname('mainID').AsString);
ADOQueryCmd.FieldByName('subID').Value := trim(CDS_Main.fieldbyname('subID').AsString);
ADOQueryCmd.FieldByName('CRTime').Value := formatdateTime('yyyy-MM-dd', CRTIme.Date);
// ADOQueryCmd.FieldByName('TocustName').Value := trim(CDS_Main.fieldbyname('TocustName').AsString);
// ADOQueryCmd.FieldByName('batchNo').Value := trim(CDS_Main.fieldbyname('batchNo').AsString);
ADOQueryCmd.FieldByName('CRType').Value := trim(CRType.Text);
ADOQueryCmd.FieldByName('CRFlag').Value := '<27><><EFBFBD><EFBFBD>';
// ADOQueryCmd.FieldByName('MJID').Value := trim(fieldbyname('MJID').AsString);
// ADOQueryCmd.FieldByName('MJXH').Value := trim(fieldbyname('MJXH').AsString);
ADOQueryCmd.FieldByName('CPTYPE').Value := '<27><>Ʒ';
ADOQueryCmd.FieldByName('P_Code').Value := trim(CDS_Main.fieldbyname('P_Code').AsString);
ADOQueryCmd.FieldByName('P_CodeName').Value := trim(CDS_Main.fieldbyname('P_CodeName').AsString);
ADOQueryCmd.FieldByName('P_spec').Value := trim(CDS_Main.fieldbyname('P_spec').AsString);
ADOQueryCmd.FieldByName('P_Color').Value := trim(CDS_Sub.fieldbyname('P_Color').AsString);
ADOQueryCmd.FieldByName('DRCKNO').Value := trim(CDS_Main.fieldbyname('DRCKNO').AsString);
ADOQueryCmd.FieldByName('DRCKName').Value := trim(CDS_Main.fieldbyname('DRCKName').AsString);
// ADOQueryCmd.FieldByName('P_ColorNO').Value := trim(fieldbyname('P_ColorNO').AsString);
// ADOQueryCmd.FieldByName('defstr1').Value := trim(fieldbyname('defstr1').AsString);
// ADOQueryCmd.FieldByName('P_MF').Value := fieldbyname('P_MF').AsFloat;
// ADOQueryCmd.FieldByName('P_KZ').Value := fieldbyname('P_KZ').AsFloat;
// ADOQueryCmd.FieldByName('RollNum').Value := fieldbyname('RollNum').AsFloat;
ADOQueryCmd.FieldByName('Qty').Value := CDS_sub.fieldbyname(FSize).AsFloat;
// ADOQueryCmd.FieldByName('zsQty').Value := fieldbyname('zsQty').AsFloat;
// ADOQueryCmd.FieldByName('QtyUnit').Value := trim(fieldbyname('QtyUnit').AsString);
ADOQueryCmd.FieldByName('Price').Value := CDS_Main.fieldbyname('price').AsFloat;
ADOQueryCmd.FieldByName('money').Value := CDS_Main.fieldbyname('money').AsFloat;
ADOQueryCmd.FieldByName('rkPrice').Value := CDS_Main.fieldbyname('rkPrice').AsFloat;
ADOQueryCmd.FieldByName('note').Value := trim(CDS_Main.fieldbyname('note').AsString);
ADOQueryCmd.FieldByName('Filler').Value := trim(Filler);
ADOQueryCmd.FieldByName('FillTime').Value := dateTimetostr(FillTime);
ADOQueryCmd.FieldByName('inoutNo').Value := trim(inoutNo.Text);
// ADOQueryCmd.FieldByName('FirstNo').Value:=trim(FirstName.TxtCode);
// ADOQueryCmd.FieldByName('FirstName').Value:=trim(FirstName.Text);
if i = 1 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'CXXS';
end
else if i = 2 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'CXS';
end
else if i = 3 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'CS';
end
else if i = 4 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'CM';
end
else if i = 5 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'CL';
end
else if i = 6 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'CXL';
end
else if i = 7 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'AXS';
end
else if i = 8 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'AS';
end
else if i = 9 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'AM';
end
else if i = 10 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'AL';
end
else if i = 11 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'AXL';
end
else if i = 12 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'AXXL';
end
else if i = 13 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'CXXL';
end
else if i = 14 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'AXXXL';
end
else if i = 15 then
begin
ADOQueryCmd.FieldByName('defstr1').Value := 'CXXXS';
end;
if FType = 1 then
begin
ADOQueryCmd.FieldByName('editer').Value := trim(dName);
ADOQueryCmd.FieldByName('editTime').Value := SGetServerDateTime(adoqueryTmp);
end;
// ADOQueryCmd.FieldByName('kcID').Value := FieldByName('kcID').AsInteger;
ADOQueryCmd.Post;
with ADOQueryTmp do
begin
close;
sql.Clear;
sql.Add('select isnull(mainID,'''') as Mainid,isnull(subID,'''') as Subid,isnull(P_Code,'''') as P_Code,isnull(P_CodeName,'''') as P_CodeName,isnull(P_spec,'''') ');
sql.Add(',isnull(P_Color,'''') as P_Color,defstr1,isnull(P_MF,'''') as P_MF,isnull(P_KZ,'''') as P_KZ,RKprice, ');
sql.Add('SUM(CRFlagRate * RollNum ) as RollNum,');
sql.Add('SUM(CRFlagRate * (Qty+zsQty)) as Qty,');
sql.Add('CAST( P_KZ as varchar(10)) as P_KZ_s,');
sql.Add(' SUM(CRFlagRate * (Qty+zsQty))*RKprice as money ');
sql.Add(',ISNULL(OrderNO,'''') as OrderNO');
sql.Add(',isnull(DRCKNO ,'''') as DRCKNO ,isnull(DRCKName,'''') as DRCKName');
sql.Add('from( ');
sql.Add('select RKprice=(select top 1 RKprice from CP_inout D where D.P_code=A.P_code order by D.RKprice desc), ');
SQL.Add('A.mainid,Subid,P_Code,P_CodeName,P_spec,P_MF,P_KZ,DRCKNO,DRCKName,RollNum,Qty,zsQty,P_color,DEFstr1, ');
sql.Add('case when CRFlag=''<27><><EFBFBD><EFBFBD>'' then 1 else -1 end as CRFlagRate ');
sql.Add(',Orderno ');
sql.Add('from CP_inout A');
sql.Add('left join JYOrder_main B on A.maiNID=B.Mainid ');
sql.Add('where a.Valid=''Y'' ');
sql.Add('and isnull(A.p_Codename,'''')=''' + CDS_Main.fieldbyname('p_Codename').AsString + ''' ');
sql.Add('and isnull(A.P_Code,'''')=''' + CDS_Main.fieldbyname('P_Code').AsString + ''' ');
sql.Add('and isnull(A.DRCKNO,'''')=''' + CDS_Main.fieldbyname('DRCKNO').AsString + ''' ');
sql.Add('and isnull(A.DRCKName,'''')=''' + CDS_Main.fieldbyname('DRCKName').AsString + ''' ');
sql.Add('and isnull(A.P_color,'''')=''' + CDS_Sub.fieldbyname('P_Color').AsString + ''' ');
sql.Add('and isnull(defstr1,'''')=(select defstr1 from CP_inout X where X.CRNO=''' + trim(fkeyNO) + ''' and X.CRID=''' + IntToStr(XHNO) + ''')');
sql.Add(' )AA');
sql.Add(' group by ISNULL(mainID,''''),ISNULL(subID,''''),isnull(P_Code,''''),isnull(P_CodeName,''''),ISNULL(P_spec,''''),isnull(P_MF,''''),isnull(P_KZ,''''),RKprice,ISNULL(OrderNO,'''') ,CAST( P_KZ as varchar(10)) ');
sql.Add(',isnull(DRCKNO ,'''') ,isnull(DRCKName,''''),isnull(P_Color,'''') ,defstr1 ');
// showmessage(sql.Text);
open;
end;
if ((ADOQueryTmp.FieldByName('Qty').AsFloat) < 0) or (ADOQueryTmp.IsEmpty = True) then
begin
// application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܴ<EFBFBD><DCB4>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
Application.MessageBox(PChar(CDS_Sub.fieldbyname('P_Color').AsString + '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܴ<EFBFBD><DCB4>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'), '<27><>ʾ', 0);
CDS_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
exit;
end;
XHNO := XHNO + 1;
end;
i := i + 1;
end;
Next;
end;
end;
// if trim(CRType.Text) = '<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>' then
// begin
// if not YSData() then
// begin
// ADOQueryCmd.Connection.RollbackTrans;
// exit;
// end;
// end;
next;
end;
// if trim(CRType.Text) = '<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>' then
// begin
// if strtofloatdef(PackFee.Text, 0) <> 0 then
// begin
// if not YSData_other('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', strtofloatdef(PackFee.Text, 0)) then
// begin
// ADOQueryCmd.Connection.RollbackTrans;
// exit;
// end;
// end;
// if strtofloatdef(YbFee.Text, 0) <> 0 then
// begin
// if not YSData_other('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', strtofloatdef(YbFee.Text, 0)) then
// begin
// ADOQueryCmd.Connection.RollbackTrans;
// exit;
// end;
// end;
// if strtofloatdef(OtherFee.Text, 0) <> 0 then
// begin
// if not YSData_other('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', strtofloatdef(otherFee.Text, 0)) then
// begin
// ADOQueryCmd.Connection.RollbackTrans;
// exit;
// end;
// end;
// if IsYjx.Checked then
// begin
// if not SKData() then
// begin
// ADOQueryCmd.Connection.RollbackTrans;
// exit;
// end;
// end;
//
// end;
end;
CDS_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
result := true;
except
CDS_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
end;
end;
procedure TfrmbpCk.InitGrid();
begin
try
with adoqueryTmp do
begin
// close;
// sql.Clear;
// sql.Add('select A.*,');
// sql.Add('orderNo=(select Top 1 orderNo from JYOrder_Main X where X.MainID=A.MainID )');
// sql.Add('from CP_InOut A');
// // sql.Add('left join JYOrder_sub B on B.mainID=A.mainID and B.subID=A.subID ');
// sql.Add('where A.CRNO=' + quotedstr(trim(fkeyNO)));
// open;
close;
sql.Clear;
sql.Add('select isnull(mainID,'''') as Mainid,isnull(subID,'''') as Subid,isnull(P_Code,'''') as P_Code,isnull(P_CodeName,'''') as P_CodeName,isnull(P_spec,'''') as P_spec ');
sql.Add(',isnull(P_MF,'''') as P_MF,isnull(P_KZ,'''') as P_KZ,RKprice,');
sql.Add('SUM(RollNum ) as RollNum,');
sql.Add('SUM((Qty+zsQty)) as Qty,');
sql.Add('CAST( P_KZ as varchar(10)) as P_KZ_s,');
sql.Add('SUM((Qty+zsQty))*RKprice as money');
sql.Add(',ISNULL(OrderNO,'''') as OrderNO');
sql.Add(',isnull(DRCKNO ,'''') as DRCKNO ,isnull(DRCKName,'''') as DRCKName,CRNO,InOutNo,CRTime,isnull(custName,'''') as custName,CRType,CKName,isnull(custNo,'''') as custNo,CPType ');
SQL.Add(',isnull(Note,'''') as Note,isnull(Price,0) as Price,FHAddress,LXFS,TocustName');
sql.Add('from (select A.*,');
sql.Add('orderNo=(select Top 1 orderNo from JYOrder_Main X where X.MainID=A.MainID )');
sql.Add('from CP_InOut A');
sql.Add('where CRNO=' + quotedstr(trim(fkeyNO)));
SQL.Add('and P_Code=' + quotedstr(trim(FCode)));
SQL.Add('and P_CodeName=' + quotedstr(trim(FCodeName)));
// SQL.Add('and DRCKNO=' + quotedstr(trim(FDRCKNO)));
// SQL.Add('and DRCKName=' + quotedstr(trim(FDRCKName)));
sql.Add(')AA');
sql.Add('group by ISNULL(mainID,''''),ISNULL(subID,''''),isnull(P_Code,''''),isnull(P_CodeName,''''),ISNULL(P_spec,'''')');
sql.Add(',isnull(P_MF,''''),isnull(P_KZ,''''),RKprice,ISNULL(OrderNO,'''') ,CAST( P_KZ as varchar(10))');
sql.Add(',isnull(DRCKNO ,'''') ,isnull(DRCKName,''''),CRNO,InOutNo,CRTime,isnull(custName,''''),CRType,CKName,isnull(custNo,''''),CPType');
sql.Add(',isnull(Note,''''),isnull(Price,0),FHAddress,LXFS,TocustName');
// ShowMessage(SQL.text);
open;
end;
SCreateCDS20(adoqueryTmp, CDS_Main);
SInitCDSData20(adoqueryTmp, CDS_Main);
if not CDS_Main.IsEmpty then
begin
CRTime.Date := CDS_Main.fieldbyname('CRTime').AsDateTime;
CKName.ItemIndex := CKName.Items.IndexOf(trim(CDS_Main.fieldbyname('CKName').AsString));
CRType.ItemIndex := CRType.Items.IndexOf(trim(CDS_Main.fieldbyname('CRType').AsString));
InoutNO.Text := trim(CDS_Main.fieldbyname('InoutNO').AsString);
// orderNo.Text:=trim(CDS_Main.fieldbyname('orderNo').AsString);
// PRTCodeName.Text:=trim(CDS_Main.fieldbyname('PRTCodeName').AsString);
// PRTColor.Text:=trim(CDS_Main.fieldbyname('PRTColor').AsString);
custName.TxtCode := trim(CDS_Main.fieldbyname('custNo').AsString);
custName.Text := trim(CDS_Main.fieldbyname('custName').AsString);
// TocustName.TxtCode := trim(CDS_Main.fieldbyname('TocustNo').AsString);
// TocustName.Text := trim(CDS_Main.fieldbyname('TocustName').AsString);
FHAddress.Text := trim(CDS_Main.fieldbyname('FHAddress').AsString);
LXFS.Text := trim(CDS_Main.fieldbyname('LXFS').AsString);
// IStax.Checked := CDS_Main.FieldByName('IsTax').AsBoolean;
// if CDS_Main.fieldbyname('IsYjx').AsString = '<27><>' then
// begin
// IsYjx.Checked := true;
// Yjxdate.Date := CDS_Main.FieldByName('Yjxdate').AsDateTime;
// end
// else
// IsYjx.Checked := false;
// YjxYG.Text := trim(CDS_Main.FieldByName('YjxYG').AsString);
// PackFee.Value := CDS_Main.FieldByName('PackFee').AsFloat;
// YbFee.Value := CDS_Main.FieldByName('YbFee').AsFloat;
// otherFee.Value := CDS_Main.FieldByName('otherFee').AsFloat;
// XjNum.Value := CDS_Main.FieldByName('XjNum').AsFloat;
// ToolButton1.Click;
Initsub_1();
end
else
ToolButton1.Click;
finally
end;
Initsub();
end;
procedure TfrmbpCk.FormDestroy(Sender: TObject);
begin
frmbpCk := nil;
end;
procedure TfrmbpCk.FormCreate(Sender: TObject);
begin
CRTime.Date := DServerDate;
panel3.Align := alclient;
Yjxdate.Date := DServerDate;
end;
procedure TfrmbpCk.FormClose(Sender: TObject; var Action: TCloseAction);
begin
writeCxGrid(self.Caption + tv1.Name + '2', Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
Action := cahide;
end;
procedure TfrmbpCk.FormShow(Sender: TObject);
begin
readCxGrid(self.Caption + tv1.Name + '2', Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
SetComboBox();
InitGrid();
if fType = 0 then
begin
if GetLSNo(ADOQueryCmd, fkeyNo, 'CK', 'CP_InOut', 3, 1) = False then
begin
// ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
Exit;
end;
inoutNo.Text := 'C' + Trim(RightBStr(fkeyNo, Length(fkeyNo) - 2));
end;
end;
procedure TfrmbpCk.TBSaveClick(Sender: TObject);
begin
if cds_main.IsEmpty then
exit;
CRTime.SetFocus;
if trim(CRType.Text) = '' then
begin
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
exit;
end;
if trim(CRType.Text) = '<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>' then
begin
if trim(custName.Text) = '' then
begin
application.MessageBox('<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
exit;
end;
end;
if IsYjx.Checked then
begin
if trim(YjxYG.Text) = '' then
begin
application.MessageBox('<27>տ<EFBFBD><D5BF>˲<EFBFBD><CBB2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
exit;
end;
end;
if (trim(CRType.Text) = '<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>') and (trim(orderNO.Text) = '') then
begin
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
exit;
end;
// if cds_main.Locate('QtyUnit','',[]) then
// begin
// application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
// exit;
// end;
// if cds_main.Locate('QtyUnit',NULL,[]) then
// begin
// application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
// exit;
// end;
if savedate() then
begin
application.MessageBox('<27><><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
ModalResult := 1;
end
else
begin
application.MessageBox('<27><><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
end;
end;
procedure TfrmbpCk.v1P_CodeNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'Cloth';
flagname := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal = 1 then
begin
Self.CDS_Main.Edit;
Self.CDS_Main.FieldByName('P_CodeName').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
Self.CDS_Main.FieldByName('P_Code').Value := Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmbpCk.ToolButton1Click(Sender: TObject);
var
FMJID: string;
begin
frmBpkclist := TfrmBpkclist.create(self);
with frmBpkclist do
begin
fType := 10;
fckName := self.fckName;
if showmodal = 1 then
begin
// cds_main.DisableControls;
// cds_main.First;
// while not cds_main.Eof do
// begin
// if (cds_main.fieldbyname('ssel').AsBoolean) then
// begin
// if GetLSNo(self.ADOQueryCmd, FMJID, 'MJ', 'CP_InOut_MX', 3, 1) = False then
// begin
// // ADOQueryCmd.Connection.RollbackTrans;
// Application.MessageBox('ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
// Exit;
// end;
self.cds_main.Append;
// self.cds_main.FieldByName('kcid').Value:=trim(cds_main.fieldbyname('kcid').AsString);
self.cds_main.FieldByName('orderNo').Value := trim(cds_main.fieldbyname('orderNo').AsString);
self.cds_main.FieldByName('mainID').Value := trim(cds_main.fieldbyname('mainID').AsString);
self.cds_main.FieldByName('subID').Value := trim(cds_main.fieldbyname('subID').AsString);
// self.cds_main.FieldByName('MJID').Value := trim(FMJID);
// self.cds_main.FieldByName('MJXH').Value:=trim(cds_main.fieldbyname('MJXH').AsString);
// self.cds_main.FieldByName('CPTYPE').Value:=trim(cds_main.fieldbyname('CPTYPE').AsString);
// self.cds_main.FieldByName('TocustName').Value:=trim(cds_main.fieldbyname('custName').AsString);
// self.cds_main.FieldByName('batchNo').Value:=trim(cds_main.fieldbyname('batchNo').AsString);
self.cds_main.FieldByName('P_Code').Value := trim(cds_main.fieldbyname('P_Code').AsString);
// self.cds_main.FieldByName('defstr1').Value := trim(cds_main.fieldbyname('defstr1').AsString);
self.cds_main.FieldByName('P_CodeName').Value := trim(cds_main.fieldbyname('P_CodeName').AsString);
// self.cds_main.FieldByName('P_spec').Value := trim(cds_main.fieldbyname('P_spec').AsString);
// self.cds_main.FieldByName('P_Color').Value := trim(cds_main.fieldbyname('P_Color').AsString);
// self.cds_main.FieldByName('P_ColorNo').Value := trim(cds_main.fieldbyname('P_ColorNo').AsString);
// self.cds_main.FieldByName('P_MF').Value := cds_main.fieldbyname('P_MF').AsFloat;
// self.cds_main.FieldByName('P_KZ').Value := cds_main.fieldbyname('P_KZ').AsFloat;
// self.cds_main.FieldByName('RollNum').Value := cds_main.fieldbyname('RollNum').AsFloat;
self.cds_main.FieldByName('Qty').Value := cds_main.fieldbyname('Qty').AsFloat;
// self.cds_main.FieldByName('QtyUnit').Value := trim(cds_main.fieldbyname('QtyUnit').AsString);
self.cds_main.FieldByName('price').Value := cds_main.fieldbyname('rkprice').AsFloat;
self.cds_main.FieldByName('rkprice').Value := cds_main.fieldbyname('rkprice').AsFloat;
self.cds_main.FieldByName('money').Value := cds_main.fieldbyname('money').AsFloat;
self.cds_main.FieldByName('DRCKNO').Value := trim(cds_main.fieldbyname('DRCKNO').AsString);
self.cds_main.FieldByName('DRCKName').Value := trim(cds_main.fieldbyname('DRCKName').AsString);
self.cds_main.Post;
try
with self.adoqueryTmp do
begin
close;
sql.Clear;
sql.Add('exec P_Get_CP_KC_MX ''' + Cds_main.fieldbyname('P_CodeName').AsString + ''' ,''' + Cds_main.fieldbyname('P_Code').AsString + ''' ');
sql.Add(',''' + Cds_main.fieldbyname('DRCKNO').AsString + ''' ,''' + Cds_main.fieldbyname('DRCKName').AsString + '''');
// ShowMessage(sql.Text);
open;
end;
SCreateCDS20(self.adoqueryTmp, Self.CDS_Sub);
// SInitCDSData20(self.adoqueryTmp, Self.CDS_Sub);
with self.adoqueryTmp do
begin
First;
while not Eof do
begin
with Self.CDS_Sub do
begin
Append;
FieldByName('P_Color').Value := trim(self.adoqueryTmp.fieldbyname('P_Color').AsString);
Post;
end;
Next;
end;
end;
finally
end;
// end;
// cds_main.Next;
// end;
// cds_main.EnableControls;
end;
free;
end;
// Initsub();
end;
procedure TfrmbpCk.ToolButton2Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then
exit;
CDS_Main.Delete;
getxjNum();
end;
procedure TfrmbpCk.TBCloseClick(Sender: TObject);
begin
close;
end;
procedure TfrmbpCk.ToCustNameBtnClick(Sender: TObject);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'CustomerNoName';
flagname := '<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal = 1 then
begin
ToCustName.Text := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString);
ToCustName.TxtCode := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmbpCk.orderNOBtnClick(Sender: TObject);
begin
{ frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application);
with frmProductOrderNewList do
begin
DParameters1:='<27><>Ȩ<EFBFBD><C8A8>';
if showmodal=1 then
begin
self.fmainID:=trim(Order_Main.fieldbyname('MainID').AsString);
self.fsubID:=trim(Order_Main.fieldbyname('subID').AsString);
self.orderNo.Text:=trim(Order_Main.fieldbyname('orderNo').AsString);
self.PRTCodeName.Text:=trim(Order_Main.fieldbyname('PRTCodeName').AsString);
self.PRTColor.Text:=trim(Order_Main.fieldbyname('PRTColor').AsString);
end;
free;
end; }
end;
procedure TfrmbpCk.custNameBtnClick(Sender: TObject);
begin
try
frmZdyAttachment := TfrmZdyAttachment.Create(Application);
with frmZdyAttachment do
begin
if ShowModal = 1 then
begin
custName.Text := Trim(CDS_HZ.fieldbyname('ZDYName').AsString);
custName.TxtCode := Trim(CDS_HZ.fieldbyname('ZdyCode').AsString);
FHAddress.Text := Trim(CDS_HZ.fieldbyname('DEFNote2').AsString);
LXFS.Text := Trim(CDS_HZ.fieldbyname('DEFstr1').AsString) + ' ' + Trim(CDS_HZ.fieldbyname('DEFstr2').AsString);
end;
end;
finally
frmZdyAttachment.Free;
end;
end;
procedure TfrmbpCk.ToolButton3Click(Sender: TObject);
begin
Panel2.Visible := true;
end;
procedure TfrmbpCk.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
if CDS_Main.IsEmpty then
exit;
if trim(edit1.Text) = '' then
exit;
if CDS_Main.Locate('MJID', trim(edit1.Text), []) then
begin
CDS_Main.Delete;
Label11.Caption := '<27><><EFBFBD><EFBFBD>:' + trim(edit1.Text) + <><C9BE><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>';
end
else
begin
Label11.Caption := '<27><><EFBFBD><EFBFBD>:' + trim(edit1.Text) + <><C9BE>ʧ<EFBFBD>ܣ<EFBFBD>';
end;
edit1.Text := '';
end;
end;
procedure TfrmbpCk.Panel2DblClick(Sender: TObject);
begin
Panel2.Visible := false;
end;
procedure TfrmbpCk.v1QtyPropertiesEditValueChanged(Sender: TObject);
var
mvalue, FFieldName: string;
begin
mvalue := TcxTextEdit(Sender).EditingText;
if Trim(mvalue) = '' then
begin
mvalue := '0';
end;
FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_Main do
begin
Edit;
FieldByName(FFieldName).Value := Trim(mvalue);
FieldbyName('Money').Value := format('%.2f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]);
Post;
end;
tv1.Controller.EditingController.ShowEdit();
GetxjNum();
end;
procedure TfrmbpCk.Tv1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
Initsub();
end;
procedure TfrmbpCk.QtyMXKeyPress(Sender: TObject; var Key: Char);
var
fMJXH: string;
fRollNum: integer;
fQty, fzsQty: double;
begin
if Key = #13 then
begin
if strtofloatdef(QtyMX.Text, 0) = 0 then
exit;
if GetLSNo(self.ADOQueryCmd, fMJXH, 'MX', 'CP_InOut_MX', 4, 1) = False then
begin
// ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
Exit;
end;
try
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from CP_InOut_MX A');
sql.Add('where 1=2');
open;
append;
Fieldbyname('MJID').Value := trim(CDS_Main.fieldbyname('MJID').AsString);
Fieldbyname('MJXH').Value := fMJXH;
Fieldbyname('RollNUm').Value := 1;
Fieldbyname('Qty').Value := strtofloatdef(QtyMX.Text, 0) - strtofloatdef(zsQtyMX.Text, 0);
Fieldbyname('zsQty').Value := strtofloatdef(zsQtyMX.Text, 0);
Fieldbyname('Qtyunit').Value := trim(CDS_Main.fieldbyname('Qtyunit').AsString);
post;
end;
with CDS_sub do
begin
append;
Fieldbyname('Qty').Value := strtofloatdef(QtyMX.Text, 0) - strtofloatdef(zsQtyMX.Text, 0);
Fieldbyname('zsQty').Value := strtofloatdef(zsQtyMX.Text, 0);
post;
end;
if varisnull(tv2.DataController.Summary.FooterSummaryValues[0]) then
begin
fRollNum := 0;
fQty := 0;
fzsQty := 0;
end
else
begin
fRollNum := CDS_Sub.RecordCount;
fQty := tv2.DataController.Summary.FooterSummaryValues[0];
fzsQty := tv2.DataController.Summary.FooterSummaryValues[1];
end;
with CDS_Main do
begin
EDIT;
FieldByName('RollNum').Value := fRollNum;
Fieldbyname('Qty').Value := fQty;
Fieldbyname('zsQty').Value := fzsQty;
FieldbyName('Money').Value := format('%.2f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]);
post;
end;
QtyMX.Text := '';
// zsQtyMX.Text:='';
QtyMX.SetFocus;
except
end;
end;
end;
procedure TfrmbpCk.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
var
FROLLnUM: INTEGER;
FQTY: double;
fzsQty: double;
begin
if CDS_Sub.IsEmpty then
exit;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
try
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('delete from CP_InOut_MX ');
sql.Add('where MJXH=' + quotedstr(trim(CDS_Sub.fieldbyname('MJXH').AsString)));
sql.Add('update CP_InOut SET RollNum=(select count(MJXH) from CP_InOut_MX X where X.MJID=CP_InOut.MJID) ');
sql.Add(',Qty=(select sum(Qty) from CP_InOut_MX X where X.MJID=CP_InOut.MJID) ');
sql.Add(',ZsQty=(select sum(ZsQty) from CP_InOut_MX X where X.MJID=CP_InOut.MJID) ');
sql.Add('where MJID=' + quotedstr(trim(CDS_Sub.fieldbyname('MJID').AsString)));
sql.Add('and CRFLag=''<27><><EFBFBD><EFBFBD>'' ');
execsql;
end;
Initsub();
if varisnull(tv2.DataController.Summary.FooterSummaryValues[0]) then
begin
FROLLnUM := 0;
FQTY := 0;
fzsQty := 0;
end
else
begin
FROLLnUM := CDS_Sub.RecordCount;
FQTY := tv2.DataController.Summary.FooterSummaryValues[0];
fzsQty := tv2.DataController.Summary.FooterSummaryValues[1];
end;
with CDS_Main do
begin
EDIT;
FieldByName('RollNum').Value := FROLLnUM;
Fieldbyname('Qty').Value := FQTY;
Fieldbyname('ZsQty').Value := fzsQty;
FieldbyName('Money').Value := format('%.2f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]);
post;
end;
except
application.MessageBox(<><C9BE>ʧ<EFBFBD><CAA7>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0)
end;
end;
procedure TfrmbpCk.YjxYGBtnClick(Sender: TObject);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'YjxYGFlag';
flagname := '<27>տ<EFBFBD><D5BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal = 1 then
begin
YjxYG.Text := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmbpCk.PackFeePropertiesChange(Sender: TObject);
begin
GetxjNum();
end;
procedure TfrmbpCk.FHAddressBtnUpClick(Sender: TObject);
begin
if Trim(custName.Text) = '' then
begin
Application.MessageBox('<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
Exit;
end;
try
frmZDYHelpSel := TfrmZDYHelpSel.Create(Application);
with frmZDYHelpSel do
begin
flag := 'FHAddress';
flagname := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ';
MainType := Trim(custName.Text);
if ShowModal = 1 then
begin
FHAddress.Text := Trim(ReturnStr);
end;
end;
finally
frmZDYHelpSel.Free;
end;
end;
procedure TfrmbpCk.LXFSBtnUpClick(Sender: TObject);
begin
if Trim(custName.Text) = '' then
begin
Application.MessageBox('<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
Exit;
end;
try
frmZDYHelpSel := TfrmZDYHelpSel.Create(Application);
with frmZDYHelpSel do
begin
flag := 'LXFS';
flagname := '<27><>ϵ<EFBFBD><CFB5>ʽ';
MainType := Trim(custName.Text);
if ShowModal = 1 then
begin
LXFS.Text := Trim(ReturnStr);
end;
end;
finally
frmZDYHelpSel.Free;
end;
end;
procedure TfrmbpCk.FHAddressBtnDnClick(Sender: TObject);
begin
TBtnEditC(Sender).Text := '';
TBtnEditC(Sender).TxtCode := '';
end;
procedure TfrmbpCk.Tv2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
FROLLnUM: INTEGER;
FQTY: double;
fzsQty: double;
begin
if Button = mbRight then
begin
if CDS_Sub.IsEmpty then
exit;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
try
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('delete from CP_InOut_MX ');
sql.Add('where MJXH=' + quotedstr(trim(CDS_Sub.fieldbyname('MJXH').AsString)));
sql.Add('update CP_InOut SET RollNum=(select count(MJXH) from CP_InOut_MX X where X.MJID=CP_InOut.MJID) ');
sql.Add(',Qty=(select sum(Qty) from CP_InOut_MX X where X.MJID=CP_InOut.MJID) ');
sql.Add(',zsQty=(select sum(zsQty) from CP_InOut_MX X where X.MJID=CP_InOut.MJID) ');
sql.Add('where MJID=' + quotedstr(trim(CDS_Sub.fieldbyname('MJID').AsString)));
sql.Add('and CRFlag=''<27><><EFBFBD><EFBFBD>''');
execsql;
end;
Initsub();
if varisnull(tv2.DataController.Summary.FooterSummaryValues[0]) then
begin
FROLLnUM := 0;
FQTY := 0;
fzsQty := 0;
end
else
begin
FROLLnUM := CDS_Sub.RecordCount;
FQTY := tv2.DataController.Summary.FooterSummaryValues[0];
fzsQty := tv2.DataController.Summary.FooterSummaryValues[1];
end;
with CDS_Main do
begin
EDIT;
FieldByName('RollNum').Value := FROLLnUM;
Fieldbyname('Qty').Value := FQTY;
Fieldbyname('zsQty').Value := fzsQty;
FieldbyName('Money').Value := format('%.3f', [FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat]);
post;
end;
except
application.MessageBox(<><C9BE>ʧ<EFBFBD><CAA7>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0)
end;
end;
end;
procedure TfrmbpCk.ToolButton4Click(Sender: TObject);
begin
with CDS_Sub do
begin
append;
post;
end;
end;
procedure TfrmbpCk.ToolButton5Click(Sender: TObject);
begin
if CDS_Sub.IsEmpty then
exit;
CDS_Sub.Delete;
end;
procedure TfrmbpCk.TV2Column2PropertiesEditValueChanged(Sender: TObject);
var
mvalue, FFieldName: string;
Qty1, Qty2, Qty3, Qty4, Qty5, Qty6, Qty7, Qty8, Qty9, Qty10, Qty11, Qty12, Qty13, Qty14, Qty15, ZQty, a: Integer;
Fprice, Fmoney: Double;
begin
mvalue := TcxTextEdit(Sender).EditingText;
if Trim(mvalue) = '' then
begin
mvalue := '0';
end;
FFieldName := Trim(Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_Sub do
begin
Edit;
FieldByName(FFieldName).Value := Trim(mvalue);
Post;
end;
Qty1 := StrToIntDef(CDS_Sub.fieldbyname('Size1').asstring, 0);
Qty2 := StrToIntDef(CDS_Sub.fieldbyname('Size2').asstring, 0);
Qty3 := StrToIntDef(CDS_Sub.fieldbyname('Size3').asstring, 0);
Qty4 := StrToIntDef(CDS_Sub.fieldbyname('Size4').asstring, 0);
Qty5 := StrToIntDef(CDS_Sub.fieldbyname('Size5').asstring, 0);
Qty6 := StrToIntDef(CDS_Sub.fieldbyname('Size6').asstring, 0);
Qty7 := StrToIntDef(CDS_Sub.fieldbyname('Size7').asstring, 0);
Qty8 := StrToIntDef(CDS_Sub.fieldbyname('Size8').asstring, 0);
Qty9 := StrToIntDef(CDS_Sub.fieldbyname('Size9').asstring, 0);
Qty10 := StrToIntDef(CDS_Sub.fieldbyname('Size10').asstring, 0);
Qty11 := StrToIntDef(CDS_Sub.fieldbyname('Size11').asstring, 0);
Qty12 := StrToIntDef(CDS_Sub.fieldbyname('Size12').asstring, 0);
Qty13 := StrToIntDef(CDS_Sub.fieldbyname('Size13').asstring, 0);
Qty14 := StrToIntDef(CDS_Sub.fieldbyname('Size14').asstring, 0);
Qty15 := StrToIntDef(CDS_Sub.fieldbyname('Size15').asstring, 0);
ZQty := Qty1 + Qty2 + Qty3 + Qty4 + Qty5 + Qty6 + Qty7 + Qty8 + Qty9 + Qty10 + Qty11 + Qty12 + Qty13 + Qty14 + Qty15;
with CDS_Sub do
begin
Edit;
FieldByName('ZQty').Value := ZQty;
Post;
end;
tv3.Controller.EditingController.ShowEdit();
// CDS_Main.FieldByName('Qty').Value
a := TV3.DataController.Summary.FooterSummaryValues[15];
CDS_Main.Edit;
CDS_Main.FieldByName('Qty').Value := a;
CDS_Main.post;
Fprice := StrToIntDef(CDS_Main.fieldbyname('Price').asstring, 0);
Fmoney := Fprice * a;
with CDS_Main do
begin
Edit;
FieldByName('Money').Value := Fmoney;
Post;
end;
end;
end.