D7wmguihua/坯布码单待检(PBMDDJ.dll)/U_NBFPInPutWGL.pas
DESKTOP-E401PHE\Administrator b4b5840f18 1
2025-01-18 16:22:10 +08:00

789 lines
26 KiB
ObjectPascal
Raw Blame History

This file contains ambiguous Unicode characters

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

unit U_NBFPInPutWGL;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxClasses, cxControls,
cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer,
cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB,
ExtCtrls, BtnEdit, cxDropDownEdit, cxCalendar, cxGridCustomPopupMenu,
cxGridPopupMenu, cxSplitter;
type
TfrmNBFPInPutWGL = class(TForm)
ToolBar1: TToolBar;
TBSave: TToolButton;
TBClose: TToolButton;
ADOTemp: TADOQuery;
ADOCmd: TADOQuery;
DataSource1: TDataSource;
Order_Sub: TClientDataSet;
DataSource2: TDataSource;
ADOZDY: TADOQuery;
CDS_ZDY: TClientDataSet;
ADOQuery1: TADOQuery;
cxGridPopupMenu1: TcxGridPopupMenu;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
ClientDataSet1: TClientDataSet;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column6: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column20: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column18: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
cxSplitter1: TcxSplitter;
Panel1: TPanel;
Panel2: TPanel;
Label9: TLabel;
OrderNo: TEdit;
cxGrid6: TcxGrid;
Tv6: TcxGridDBTableView;
v6Column5: TcxGridDBColumn;
v6Column7: TcxGridDBColumn;
v6BCOrderNo: TcxGridDBColumn;
cxGridDBColumn1: TcxGridDBColumn;
v6Column1: TcxGridDBColumn;
Tv6Column1: TcxGridDBColumn;
v6Column10: TcxGridDBColumn;
v6Column11: TcxGridDBColumn;
v6Column8: TcxGridDBColumn;
v6Column9: TcxGridDBColumn;
Tv6Column2: TcxGridDBColumn;
v6Column2: TcxGridDBColumn;
v6Column3: TcxGridDBColumn;
v6Column12: TcxGridDBColumn;
v6Column13: TcxGridDBColumn;
v6Column4: TcxGridDBColumn;
cxGridLevel6: TcxGridLevel;
cxSplitter2: TcxSplitter;
DataSource3: TDataSource;
CDS_HZ: TClientDataSet;
cxGridPopupMenu2: TcxGridPopupMenu;
ADOQueryMain: TADOQuery;
cxGridPopupMenu3: TcxGridPopupMenu;
Order_Main: TClientDataSet;
DataSource4: TDataSource;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridDBColumn2: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
cxGridDBColumn5: TcxGridDBColumn;
cxGridDBColumn6: TcxGridDBColumn;
cxGridDBColumn7: TcxGridDBColumn;
cxGridDBColumn8: TcxGridDBColumn;
cxGridDBColumn9: TcxGridDBColumn;
cxGridDBColumn10: TcxGridDBColumn;
cxGridDBColumn11: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
v2Column1: TcxGridDBColumn;
Button1: TButton;
Button2: TButton;
cxGridPopupMenu4: TcxGridPopupMenu;
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure v1Column3PropertiesEditValueChanged(Sender: TObject);
procedure v1Column20PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure OrderNoKeyPress(Sender: TObject; var Key: Char);
procedure Tv6CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure Tv6CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure v1Column5PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure Tv1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure Button1Click(Sender: TObject);
private
FXS:Integer;
procedure InitData();
procedure ZDYHelp(FButn:TcxButtonEdit;LType:string);
function SaveData():Boolean;
procedure GetMaxConNO();
procedure InitGYSFP();
{ Private declarations }
public
PState,PCopyInt:Integer;
FMainId,FConNo,FConType,FYLType:String;
{ Public declarations }
end;
var
frmNBFPInPutWGL: TfrmNBFPInPutWGL;
implementation
uses
U_DataLink,U_ZDYHelp,U_RTFun,U_ZDYHelpSel,U_BGHZSelList;
{$R *.dfm}
procedure TfrmNBFPInPutWGL.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27><>Ӧ<EFBFBD>̷<EFBFBD>Ʊ¼<C6B1><C2BC>',Tv1,'<27><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>');
WriteCxGrid('<27><>Ӧ<EFBFBD>̷<EFBFBD>Ʊ¼<C6B1><C2BC>6',Tv6,'<27><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>');
WriteCxGrid('<27><>Ӧ<EFBFBD>̷<EFBFBD>Ʊ¼<C6B1><C2BC>2',Tv2,'<27><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>');
end;
procedure TfrmNBFPInPutWGL.InitData();
begin
with ADOQuery1 do
begin
Close;
SQL.Clear;
sql.Add(' select A.* ');
SQL.Add(' from FP_GYSNB A');
sql.Add(' where A.FMID='''+Trim(FMainId)+'''');
Open;
end;
SCreateCDS20(ADOQuery1,Order_Sub);
SInitCDSData20(ADOQuery1,Order_Sub);
end;
procedure TfrmNBFPInPutWGL.ZDYHelp(FButn:TcxButtonEdit;LType:string);
begin
end;
procedure TfrmNBFPInPutWGL.FormShow(Sender: TObject);
begin
ReadCxGrid('<27><>Ӧ<EFBFBD>̷<EFBFBD>Ʊ¼<C6B1><C2BC>',Tv1,'<27><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>');
ReadCxGrid('<27><>Ӧ<EFBFBD>̷<EFBFBD>Ʊ¼<C6B1><C2BC>6',Tv6,'<27><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>');
ReadCxGrid('<27><>Ӧ<EFBFBD>̷<EFBFBD>Ʊ¼<C6B1><C2BC>2',Tv2,'<27><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>');
InitData();
end;
procedure TfrmNBFPInPutWGL.GetMaxConNO();
begin
end;
function TfrmNBFPInPutWGL.SaveData():Boolean;
var
maxno:String;
begin
try
Result:=False;
ADOCmd.Connection.BeginTrans;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Order_Sub.DisableControls;
with Order_Sub do
begin
First;
while not Eof do
begin
if Trim(Order_Sub.fieldbyname('FMID').AsString)='' then
begin
if GetLSNo(ADOCmd,maxno,'FM','FP_GYSNB',4,1)=False then
begin
Order_Sub.EnableControls;
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
end else
begin
maxno:=Trim(Order_Sub.fieldbyname('FMID').AsString);
end;
with ADOCmd do
begin
Close;
sql.Clear;
SQL.Add('select * from FP_GYSNB where FMID='''+Trim(Order_Sub.fieldbyname('FMID').AsString)+'''');
Open;
end;
with ADOCmd do
begin
if Trim(Order_Sub.fieldbyname('FMID').AsString)='' then
begin
Append;
end
else begin
Edit;
end;
FieldByName('FMID').Value:=Trim(maxno);
FieldByName('BGID').Value:=Order_Sub.fieldbyname('BGID').Value;
FieldByName('BCID').Value:=Order_Sub.fieldbyname('BCID').Value;
FieldByName('NQID').Value:=Order_Sub.fieldbyname('NQID').Value;
//FieldByName('FactoryNo').Value:=Order_Sub.fieldbyname('FactoryNo').Value;
FieldByName('FMType').Value:='NB';
RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'FP_GYSNB',0) ;
if Trim(FMainId)='' then
begin
FieldByName('Filler').Value:=Trim(DName);
end else
begin
FieldByName('Editer').Value:=Trim(DName);
FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp);
end;
Post;
end;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('select * from FP_GYSNB where FPNO='''+Trim(Order_Sub.fieldbyname('FPNO').AsString)+'''');
sql.Add(' and isnull(FMType,'''')=''NB'' ');
Open;
end;
if ADOCmd.RecordCount>1 then
begin
Order_Sub.EnableControls;
ADOCmd.Connection.RollbackTrans;
Result:=False;
Application.MessageBox(PChar('<27><>Ʊ<EFBFBD><C6B1>:'+Trim(Order_Sub.fieldbyname('FPNO').AsString)+'<27>ظ<EFBFBD>!'),'',0);
Exit;
end;
Edit;
FieldByName('FMID').Value:=Trim(maxno);
Next;
end;
end;
Order_Sub.EnableControls;
ADOCmd.Connection.CommitTrans;
Result:=True;
except
Result:=False;
ADOCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
end;
end;
procedure TfrmNBFPInPutWGL.TBSaveClick(Sender: TObject);
var
FPPrice,PRTPrice,BCMoney,FPQty,ChaMoney:string;
begin
ToolBar1.SetFocus;
if Order_Sub.IsEmpty then
begin
Application.MessageBox('<27><>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
exit;
end;
if Order_Sub.Locate('FPNO',null,[]) then
begin
Application.MessageBox('<27><>Ʊ<EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Order_Sub.Locate('FPDate',null,[]) then
begin
Application.MessageBox('<27><>Ʊ<EFBFBD><C6B1><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Order_Sub.Locate('GHDanWei',null,[]) then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Order_Sub.Locate('Qty',null,[]) then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Order_Sub.Locate('Price',null,[]) then
begin
Application.MessageBox('<27><><EFBFBD>۲<EFBFBD><DBB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Order_Sub.Locate('Money',null,[]) then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EEB2BB>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if SaveData() then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>','<27><>ʾ',0);
ModalResult:=1;
end;
end;
procedure TfrmNBFPInPutWGL.ToolButton3Click(Sender: TObject);
var
FSQDate:string;
begin
FSQDate:=Trim(FormatDateTime('yyyy-MM-dd',SGetServerDate(ADOTemp)));
try
frmBGHZSelList:=TfrmBGHZSelList.Create(Application);
with frmBGHZSelList do
begin
if ShowModal=1 then
begin
with frmBGHZSelList.CDS_HZ do
begin
First;
while not Eof do
begin
if frmBGHZSelList.CDS_HZ.FieldByName('SSel').AsBoolean=True then
begin
with Self.Order_Sub do
begin
Append;
FieldByName('BGId').Value:=frmBGHZSelList.CDS_HZ.FieldByName('BGId').Value;
FieldByName('BCID').Value:=frmBGHZSelList.CDS_HZ.FieldByName('BCID').Value;
FieldByName('NQID').Value:=frmBGHZSelList.CDS_HZ.FieldByName('NQID').Value;
FieldByName('OrderNo').Value:=frmBGHZSelList.CDS_HZ.FieldByName('OrderNo').Value;
FieldByName('BGName').Value:=frmBGHZSelList.CDS_HZ.FieldByName('BGName').Value;
FieldByName('XHDanWei').Value:=frmBGHZSelList.CDS_HZ.FieldByName('ComTaiTou').Value;
FieldByName('QtyUnit').Value:=frmBGHZSelList.CDS_HZ.FieldByName('NQUnit').Value;
if Trim(frmBGHZSelList.CDS_HZ.FieldByName('NQUnit').AsString)='M' then
begin
FieldByName('Qty').Value:=frmBGHZSelList.CDS_HZ.FieldByName('NQMQty').Value
-frmBGHZSelList.CDS_HZ.FieldByName('FPQty').Value;
end else
begin
FieldByName('Qty').Value:=frmBGHZSelList.CDS_HZ.FieldByName('NQkgQty').Value
-frmBGHZSelList.CDS_HZ.FieldByName('FPQty').Value;
end;
FieldByName('FPDate').Value:=FSQDate;
//Post;
end;
end;
Next;
end;
end;
end;
end;
finally
frmBGHZSelList.Free;
end;
end;
procedure TfrmNBFPInPutWGL.ToolButton4Click(Sender: TObject);
begin
if Order_Sub.IsEmpty then Exit;
if Trim(Order_Sub.fieldbyname('FMId').AsString)<>'' then
begin
with ADOTemp do
begin
Close;
sql.Clear;
sql.Add('select isnull(sum(HXMoney),0) HXMoney from FP_Money_HX where NBFMID='''+Trim(Order_Sub.fieldbyname('FMId').AsString)+'''');
sql.Add(' and isnull(Type,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>̷<EFBFBD>Ʊ'' ');
Open;
end;
if ADOTemp.FieldByName('HXMoney').Value<>0 then
begin
Application.MessageBox('<27><><EFBFBD>к<EFBFBD><D0BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD>ɾ<EFBFBD><C9BE>!','<27><>ʾ',0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('delete FP_GYSNB where FMId='''+Trim(Order_Sub.fieldbyname('FMId').AsString)+'''');
ExecSQL;
end;
end;
Order_Sub.Delete;
end;
procedure TfrmNBFPInPutWGL.v1Column3PropertiesEditValueChanged(
Sender: TObject);
var
mvalue,FQty,FPrice,FMoney,FName:String;
begin
FName:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName;
mvalue:=TcxTextEdit(Sender).EditingText;
if Trim(mvalue)='' then mvalue:='0';
with Order_Sub do
begin
Edit;
FieldByName(FName).Value:=mvalue;
Post;
end;
FQty:=Order_Sub.fieldbyname('Qty').AsString;
FPrice:=Order_Sub.fieldbyname('Price').AsString;
FMoney:=Order_Sub.fieldbyname('Money').AsString;
if Trim(FQty)='' then FQty:='0';
if Trim(FPrice)='' then FPrice:='0';
if Trim(FMoney)='' then FMoney:='0';
if Trim(FName)<>'Money' then
begin
with Order_Sub do
begin
Edit;
FieldByName('Money').Value:=StrToFloat(FQty)*StrToFloat(FPrice);
Post;
end;
end else
begin
if Trim(FQty)<>'0' then
begin
with Order_Sub do
begin
Edit;
FieldByName('Price').Value:=StrToFloat(FMoney)*1.000000/StrToFloat(FQty);
Post;
end;
end else
begin
with Order_Sub do
begin
Edit;
FieldByName('Price').Value:=Null;
Post;
end;
end;
end;
end;
procedure TfrmNBFPInPutWGL.v1Column20PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='GSTT';
flagname:='<27><><EFBFBD>ص<EFBFBD>λ';
V1ZdyStr1.Visible:=True;
V1ZdyStr2.Visible:=True;
V1ZdyStr3.Visible:=True;
V1ZdyStr4.Visible:=True;
V1ZdyStr1.Caption:='<27><><EFBFBD><EFBFBD>';
V1ZdyStr2.Caption:='<27>绰';
V1ZdyStr3.Caption:='<27><><EFBFBD><EFBFBD>';
V1ZdyStr4.Caption:='<27><>ַ';
frmZDYHelp.Align:=alClient;
if ShowModal=1 then
begin
with Order_Sub do
begin
Edit;
FieldByName('GHDanWei').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmNBFPInPutWGL.OrderNoKeyPress(Sender: TObject; var Key: Char);
begin
if Key=#13 then
begin
if Length(OrderNo.Text)<3 then Exit;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
SQL.Clear;
sql.Add(' select A.*,B.OrderNo,B.ComTaiTou,C.Chker,C.ChkTime,C.ChkStatus,C.BCOrderNo ');
sql.Add(' ,FPMoney=isnull((select Sum(Money) from FP_GYSNB AA where AA.NQID=A.NQID),0)');
sql.Add(' ,FPQty=isnull((select Sum(Qty) from FP_GYSNB AA where AA.NQID=A.NQID),0)');
sql.Add(',FPDanWei=(select Top 1 GHDanWei from FP_GYSNB AA where AA.NQID=A.NQID)');
sql.Add(',KHName=(select CustomerNoName from JYOrder_Main BB where BB.OrderNo=B.OrderNo)');
sql.Add(' ,WXFPMoney=isnull((select Sum(Money) from FP_XiaoShou_Sub AA where AA.NQID=A.NQID),0)');
sql.Add(' ,WXFPQty=isnull((select Sum(Qty) from FP_XiaoShou_Sub AA where AA.NQID=A.NQID),0)');
sql.Add(' from JYOrder_BG_CKName_Qty A ');
sql.Add(' inner join JYOrder_BG_CK C on A.BCId=C.BCId');
sql.Add(' inner join JYOrder_BG B on A.BGId=B.BGId');
SQL.Add(' where B.OrderNo like '''+'%'+Trim(OrderNo.Text)+'%'+'''');
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_HZ);
SInitCDSData20(ADOQueryMain,CDS_HZ);
finally
ADOQueryMain.EnableControls;
end;
end;
end;
procedure TfrmNBFPInPutWGL.Tv6CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
with Self.Order_Sub do
begin
Append;
FieldByName('BGId').Value:=CDS_HZ.FieldByName('BGId').Value;
FieldByName('BCID').Value:=CDS_HZ.FieldByName('BCID').Value;
FieldByName('NQID').Value:=CDS_HZ.FieldByName('NQID').Value;
FieldByName('OrderNo').Value:=CDS_HZ.FieldByName('OrderNo').Value;
FieldByName('BGName').Value:=CDS_HZ.FieldByName('BGName').Value;
//FieldByName('XHDanWei').Value:=Order_Main.FieldByName('GHDanWei').Value;
FieldByName('GHDanWei').Value:=CDS_HZ.FieldByName('ComTaiTou').Value;
FieldByName('QtyUnit').Value:=CDS_HZ.FieldByName('NQUnit').Value;
if Trim(CDS_HZ.FieldByName('NQUnit').AsString)='M' then
begin
FieldByName('Qty').Value:=CDS_HZ.FieldByName('NQMQty').Value
-CDS_HZ.FieldByName('FPQty').Value;
end else
begin
FieldByName('Qty').Value:=CDS_HZ.FieldByName('NQkgQty').Value
-CDS_HZ.FieldByName('FPQty').Value;
end;
FieldByName('FPDate').Value:=SGetServerDate(ADOTemp);
//Post;
end;
end;
procedure TfrmNBFPInPutWGL.Tv6CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
{with ADOQueryMain do
begin
Filtered:=False;
Close;
SQL.Clear;
sql.Add(' select A.*,DHXMoney=A.Money-isnull(A.HXMoney,0),BCHXMoney=Cast(0 as decimal(18,2) ) ');
sql.Add(' from FP_GYSNB A');
sql.Add(' where A.BCID='''+Trim(CDS_HZ.fieldbyname('BCID').AsString)+''' and A.FMType=''GYS'' ');
sql.Add(' union All');
sql.Add(' select A.*,DHXMoney=A.Money-isnull(A.HXMoney,0),BCHXMoney=Cast(0 as decimal(18,2) ) ');
sql.Add(' from FP_GYSNB A');
sql.Add(' where A.FMType=''GYS'' ');
sql.Add(' and isnull(A.BCID,'''')<>'''+Trim(CDS_HZ.fieldbyname('BCID').AsString)+'''');
SQL.Add(' and A.Money<>isnull(A.HXMoney,0)');
sql.Add(' and A.FactoryName in(');
sql.Add(' select A.FactoryName ');
sql.Add(' from FP_GYSNB A');
sql.Add(' where A.BCID='''+Trim(CDS_HZ.fieldbyname('BCID').AsString)+''' and A.FMType=''GYS'' ');
sql.Add(')');
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main); }
end;
procedure TfrmNBFPInPutWGL.v1Column5PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='GSTT';
flagname:='<27><><EFBFBD>ص<EFBFBD>λ';
V1ZdyStr1.Visible:=True;
V1ZdyStr2.Visible:=True;
V1ZdyStr3.Visible:=True;
V1ZdyStr4.Visible:=True;
V1ZdyStr1.Caption:='<27><><EFBFBD><EFBFBD>';
V1ZdyStr2.Caption:='<27>绰';
V1ZdyStr3.Caption:='<27><><EFBFBD><EFBFBD>';
V1ZdyStr4.Caption:='<27><>ַ';
frmZDYHelp.Align:=alClient;
if ShowModal=1 then
begin
with Order_Sub do
begin
Edit;
FieldByName('XHDanWei').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmNBFPInPutWGL.Tv1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
SQL.Clear;
sql.Add(' select A.*,B.OrderNo,B.ComTaiTou,C.Chker,C.ChkTime,C.ChkStatus,C.BCOrderNo ');
sql.Add(' ,FPMoney=isnull((select Sum(Money) from FP_GYSNB AA where AA.NQID=A.NQID),0)');
sql.Add(' ,FPQty=isnull((select Sum(Qty) from FP_GYSNB AA where AA.NQID=A.NQID),0)');
sql.Add(',FPDanWei=(select Top 1 GHDanWei from FP_GYSNB AA where AA.NQID=A.NQID)');
sql.Add(',KHName=(select CustomerNoName from JYOrder_Main BB where BB.OrderNo=B.OrderNo)');
sql.Add(' ,WXFPMoney=isnull((select Sum(Money) from FP_XiaoShou_Sub AA where AA.NQID=A.NQID),0)');
sql.Add(' ,WXFPQty=isnull((select Sum(Qty) from FP_XiaoShou_Sub AA where AA.NQID=A.NQID),0)');
sql.Add(' from JYOrder_BG_CKName_Qty A ');
sql.Add(' inner join JYOrder_BG_CK C on A.BCId=C.BCId');
sql.Add(' inner join JYOrder_BG B on A.BGId=B.BGId');
SQL.Add(' where B.OrderNo='''+Trim(Order_Sub.fieldbyname('OrderNo').AsString)+'''');
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_HZ);
SInitCDSData20(ADOQueryMain,CDS_HZ);
finally
ADOQueryMain.EnableControls;
end;
InitGYSFP();
end;
procedure TfrmNBFPInPutWGL.Button1Click(Sender: TObject);
var
maxno,FFHID:string;
begin
if Order_Sub.IsEmpty then Exit;
if Order_Main.IsEmpty then Exit;
if Trim(Order_Sub.FieldByName('FMID').AsString)='' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then exit;
try
ADOCmd.Connection.BeginTrans;
with Order_Main do
begin
First;
while not Eof do
begin
with ADOTemp do
begin
Close;
sql.Clear;
sql.Add('select * from FP_Money_HX where NBFMID='''+Trim(Order_Sub.fieldbyname('FMID').AsString)+'''');
sql.Add(' and GYSFMID='''+Trim(Order_Main.fieldbyname('FMID').AsString)+'''');
open;
end;
FFHID:=Trim(ADOTemp.fieldbyname('FHID').AsString);
if Trim(FFHID)='' then
begin
if GetLSNo(ADOCmd,maxno,'FH','FP_Money_HX',4,1)=False then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
end else
begin
maxno:=Trim(FFHID);
end;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('select * from FP_Money_HX where FHID='''+Trim(FFHID)+'''');
open;
end;
with ADOCmd do
begin
if Trim(FFHID)='' then
begin
Append;
FieldByName('Filler').Value:=Trim(DName);
end else
begin
Edit;
FieldByName('Editer').Value:=Trim(DName);
FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp);
end;
FieldByName('FHID').Value:=Trim(maxno);
FieldByName('GYSFMID').Value:=Trim(Order_Main.fieldbyname('FMID').AsString);
FieldByName('NBFMID').Value:=Trim(Order_Sub.fieldbyname('FMID').AsString);
if Trim(Order_Main.fieldbyname('BCHXMoney').AsString)='' then
begin
FieldByName('HXMoney').Value:=0;
end else
begin
FieldByName('HXMoney').Value:=Order_Main.fieldbyname('BCHXMoney').Value;
end;
FieldByName('Type').Value:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>̷<EFBFBD>Ʊ';
Post;
end;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add(' Update FP_GYSNB Set HXMoney=(select Sum(HXMoney) from FP_Money_HX A');
sql.Add(' where A.GYSFMID=FP_GYSNB.FMID)');
sql.Add(' where FMID='''+Trim(Order_Main.fieldbyname('FMID').AsString)+'''');
ExecSQL;
end;
Next;
end;
end;
ADOCmd.Connection.CommitTrans;
InitGYSFP();
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!','<27><>ʾ',0);
Exit;
except
ADOCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
end;
end;
procedure TfrmNBFPInPutWGL.InitGYSFP();
begin
with ADOQueryMain do
begin
Filtered:=False;
Close;
SQL.Clear;
{sql.Add(' select A.*,B.OrderNo,B.ComTaiTou,C.Chker,C.ChkTime,C.ChkStatus, ');
sql.Add(' FPMoney=(select Sum(Money) from FP_GYSNB AA where AA.BFID=A.BFID)');
sql.Add(' from JYOrder_BG_KPFee A ');
sql.Add(' inner join JYOrder_BG_CK C on A.BCId=C.BCId');
sql.Add(' inner join JYOrder_BG B on A.BGId=B.BGId');
SQL.Add(' where A.BCID='''+Trim(CDS_HZ.fieldbyname('BCID').AsString)+'''');}
sql.Add(' select A.*,DHXMoney=A.Money-isnull(A.HXMoney,0)');
sql.Add(' ,BCHXMoney=(select HXMoney from FP_Money_HX HX where HX.GYSFMID=A.FMID ');
SQL.Add(' and HX.NBFMID='''+Trim(Order_Sub.fieldbyname('FMID').AsString)+''')');
sql.Add(' from FP_GYSNB A');
sql.Add(' where A.BCID='''+Trim(Order_Sub.fieldbyname('BCID').AsString)+''' and A.FMType=''GYS'' ');
sql.Add(' and isnull(A.FPNO,'''') not like ''%QC%'' ');
sql.Add(' and isnull(A.FPNO,'''') not like ''%TZ%'' ');
sql.Add(' union All');
sql.Add(' select A.*,DHXMoney=A.Money-isnull(A.HXMoney,0) ');
sql.Add(' ,BCHXMoney=(select HXMoney from FP_Money_HX HX where HX.GYSFMID=A.FMID ');
SQL.Add(' and HX.NBFMID='''+Trim(Order_Sub.fieldbyname('FMID').AsString)+''')');
sql.Add(' from FP_GYSNB A');
sql.Add(' where A.FMType=''GYS'' ');
sql.Add(' and isnull(A.FPNO,'''') not like ''%QC%'' ');
sql.Add(' and isnull(A.FPNO,'''') not like ''%TZ%'' ');
sql.Add(' and isnull(A.BCID,'''')<>'''+Trim(Order_Sub.fieldbyname('BCID').AsString)+'''');
SQL.Add(' and A.Money<>isnull(A.HXMoney,0)');
sql.Add(' and A.FactoryName in(');
sql.Add(' select A.FactoryName ');
sql.Add(' from FP_GYSNB A');
sql.Add(' where A.BCID='''+Trim(Order_Sub.fieldbyname('BCID').AsString)+''' and A.FMType=''GYS'' ');
sql.Add(')');
sql.Add(' union All');
sql.Add(' select A.*,DHXMoney=A.Money-isnull(A.HXMoney,0) ');
sql.Add(' ,BCHXMoney=(select HXMoney from FP_Money_HX HX where HX.GYSFMID=A.FMID ');
SQL.Add(' and HX.NBFMID='''+Trim(Order_Sub.fieldbyname('FMID').AsString)+''')');
sql.Add(' from FP_GYSNB A');
sql.Add(' where A.FMType=''GYS'' ');
sql.Add(' and isnull(A.FPNO,'''') not like ''%QC%'' ');
sql.Add(' and isnull(A.FPNO,'''') not like ''%TZ%'' ');
SQL.Add(' and A.Money=isnull(A.HXMoney,0)');
sql.Add(' and isnull(A.BCID,'''')='''' ');
SQL.Add(' and exists(select * from FP_Money_HX FH where FH.GYSFMID=A.FMID');
sql.Add(' and FH.NBFMID='''+Trim(Order_Sub.fieldbyname('FMID').AsString)+''')');
//ShowMessage(sql.Text);
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
end.