D7snShanfengT/应收应付/U_SKCR_YF.pas
DESKTOP-E401PHE\Administrator c363cb75a7 调整之后的山凤水泥厂
2026-02-26 09:41:35 +08:00

1083 lines
36 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_SKCR_YF;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB,
cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin,
StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls,
cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid,
cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common,
RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar,
cxButtonEdit, cxTextEdit, cxPC, RM_e_Xls, cxCurrencyEdit;
type
TfrmSKCR_YF = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ToolButton2: TToolButton;
ADOQueryMain: TADOQuery;
ToolButton1: TToolButton;
RMDB_PB: TRMDBDataSet;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
V1CRTime: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
begdate: TDateTimePicker;
Enddate: TDateTimePicker;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_HZ: TDataSource;
CDS_HZ: TClientDataSet;
TCK: TToolButton;
v2MFSZ: TcxGridDBColumn;
v2GZPMoney: TcxGridDBColumn;
v2HSMoney: TcxGridDBColumn;
v2KFMoney: TcxGridDBColumn;
TPrint: TToolButton;
v2SNMoney: TcxGridDBColumn;
v2MHMoney: TcxGridDBColumn;
v2MFMH: TcxGridDBColumn;
Order_PB: TClientDataSet;
Order_FYZC: TClientDataSet;
Order_RF: TClientDataSet;
Order_XS: TClientDataSet;
Order_SK: TClientDataSet;
RMDB_FYZC: TRMDBDataSet;
RMD_RF: TRMDBDataSet;
RMDB_XS: TRMDBDataSet;
RMDB_SK: TRMDBDataSet;
ADOQuery1: TADOQuery;
RMXLSExport1: TRMXLSExport;
ADOQuery2: TADOQuery;
ADOQuery3: TADOQuery;
ADOQuery4: TADOQuery;
ADOQuery5: TADOQuery;
RM1: TRMGridReport;
v2MLMoney: TcxGridDBColumn;
v2MFHS: TcxGridDBColumn;
v2XSMoney: TcxGridDBColumn;
v2CPFLQty: TcxGridDBColumn;
v2YJFLQty: TcxGridDBColumn;
v2MFXS: TcxGridDBColumn;
v2SZMoney: TcxGridDBColumn;
v2MFSN: TcxGridDBColumn;
v2MFXSMoney: TcxGridDBColumn;
v2MFGZP: TcxGridDBColumn;
v2Money: TcxGridDBColumn;
v2MFKF: TcxGridDBColumn;
Label7: TLabel;
RadioGroup1: TRadioGroup;
v2ZJMoney1: TcxGridDBColumn;
v2MFZJ: TcxGridDBColumn;
v2HJMoney: TcxGridDBColumn;
v2MFHJ: TcxGridDBColumn;
v2MFML: TcxGridDBColumn;
v2MLLV: TcxGridDBColumn;
v2CYMoney: TcxGridDBColumn;
v2MFCY: TcxGridDBColumn;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure CustomerNoNameChange(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject);
procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject);
procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject);
procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v2Column3PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure ToolButton1Click(Sender: TObject);
procedure v2Column4PropertiesEditValueChanged(Sender: TObject);
procedure v2Column1PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure VBBPropertiesEditValueChanged(Sender: TObject);
procedure ConNoChange(Sender: TObject);
procedure v2Column1PropertiesEditValueChanged(Sender: TObject);
procedure v2DerateMoneyPropertiesEditValueChanged(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure v2ComTaitouPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure TCKClick(Sender: TObject);
procedure Tv2CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure FormCreate(Sender: TObject);
procedure ConNoKeyPress(Sender: TObject; var Key: Char);
procedure TPrintClick(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure RadioGroup1Click(Sender: TObject);
private
{ Private declarations }
procedure InitGridHZ();
procedure InitGrid();
function SaveData():Boolean;
Procedure SetStatus();
public
fflag:integer;
{ Public declarations }
RKFlag,FCYID,fmanage:String;
end;
var
frmSKCR_YF: TfrmSKCR_YF;
implementation
uses
U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList,
U_ZdyAttachment,U_ProductOrderListSel, U_JYOrderYS, U_JYOrderCon_CX;
{$R *.dfm}
Procedure TfrmSKCR_YF.SetStatus();
var
i:integer;
begin
end;
procedure TfrmSKCR_YF.InitGrid();
var i:Integer;
begin
with ADOQueryMain do
begin
Close;
SQL.Clear;
if RadioGroup1.ItemIndex=1 then
begin
sql.Add('exec P_YFFK_HZCX :Month,:EndMonth');
Parameters.ParamByName('Month').Value:=Trim(FormatDateTime('yyyy-MM',begdate.Date));
Parameters.ParamByName('EndMonth').Value:=Trim(FormatDateTime('yyyy-MM',Enddate.Date));
V1CRTime.Caption:='<27>·<EFBFBD>';
begdate.Format:='yyyy-MM';
Enddate.Format:='yyyy-MM';
end;
if RadioGroup1.ItemIndex=0 then
begin
sql.Add('exec P_YFFK_HZCX_Year :Month,:EndMonth');
Parameters.ParamByName('Month').Value:=Trim(FormatDateTime('yyyy',begdate.Date));
Parameters.ParamByName('EndMonth').Value:=Trim(FormatDateTime('yyyy',Enddate.Date));
V1CRTime.Caption:='<27><><EFBFBD><EFBFBD>';
begdate.Format:='yyyy';
Enddate.Format:='yyyy';
end;
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_HZ);
SInitCDSData20(ADOQueryMain,CDS_HZ);
for i:=1 to 33-CDS_HZ.RecordCount do
begin
with CDS_HZ do
begin
Append;
post;
end;
end;
end;
procedure TfrmSKCR_YF.InitGridHZ();
begin
end;
procedure TfrmSKCR_YF.FormDestroy(Sender: TObject);
begin
frmSKCR_YF:=nil;
end;
procedure TfrmSKCR_YF.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmSKCR_YF.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('<27><><EFBFBD><EFBFBD>ë<EFBFBD><C3AB>',Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
Close;
end;
procedure TfrmSKCR_YF.FormShow(Sender: TObject);
begin
ReadCxGrid('<27><><EFBFBD><EFBFBD>ë<EFBFBD><C3AB>',Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
Enddate.DateTime:=SGetServerDate(ADOQueryTemp);
begdate.DateTime:=SGetServerDate(ADOQueryTemp);
//SetStatus();
//InitGrid();
end;
procedure TfrmSKCR_YF.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmSKCR_YF.ToolButton2Click(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,CDS_HZ);
SInitCDSData20(ADOQueryMain,CDS_HZ);
end;
end;
procedure TfrmSKCR_YF.CustomerNoNameChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmSKCR_YF.Button2Click(Sender: TObject);
begin
if CDS_HZ.IsEmpty then Exit;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+'''');
ExecSQL;
end;
end;
CDS_HZ.Delete;
end;
function TfrmSKCR_YF.SaveData():Boolean;
var
maxId,CRID:String;
begin
try
ADOQueryCmd.Connection.BeginTrans;
if GetLSNo(ADOQueryCmd,maxId,'FK','YF_Money_CR',4,1)=False then
begin
Result:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''' ');
Open;
end;
if ADOQueryCmd.IsEmpty=False then
begin
CRID:=ADOQueryCmd.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('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString);
FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString);
FieldByName('ZdyStr1').Value:=<><D3A6><EFBFBD><EFBFBD>';
// FieldByName('YFDefFlag1').Value:=fFlag;
Post;
end;
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(maxId);
FieldByName('CRID').Value:=StrToInt(CRID);
//SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3);
FieldByName('Filler').Value:=Trim(DName);
FieldByName('CRType').Value:='<27>տ<EFBFBD><D5BF>Ǽ<EFBFBD>';
FieldByName('CRFlag').Value:=<><D3A6><EFBFBD><EFBFBD>';
FieldByName('QtyFlag').Value:=-1;
FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString);
FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString);
FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp);
FieldByName('YFDefFlag1').Value:=fFlag;
FieldByName('status').Value:=0;
Post;
end;
with CDS_HZ do
begin
Edit;
FieldByName('YFId').Value:=Trim(maxId);
FieldByName('CRID').Value:=StrToInt(CRID);
end;
ADOQueryCmd.Connection.CommitTrans;
Result:=True;
except
Result:=True;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
end;
end;
procedure TfrmSKCR_YF.cxGridDBColumn8PropertiesEditValueChanged(
Sender: TObject);
var
mvalue,FFieldName:String;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_HZ do
begin
Edit;
FieldByName(FFieldName).Value:=Trim(mvalue);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YCL_SG_HZ ');
if Trim(mvalue)<>'' then
begin
sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+'''');
end else
begin
sql.Add(' Set '+FFieldName+'=NULL');
end;
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+'''');
ExecSQL;
end;
end;
procedure TfrmSKCR_YF.cxGridDBColumn5PropertiesEditValueChanged(
Sender: TObject);
var
mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
if Trim(mvalue)='' then
begin
mvalue:='0';
end;
FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_HZ do
begin
Edit;
FieldByName(FFieldName).Value:=Trim(mvalue);
Post;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+'''');
Open;
end;
FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString;
FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString);
if Trim(FQty)='' then FQty:='0';
FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString);
if Trim(FPrice)='' then FPrice:='0';
FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString);
if Trim(FQty)='' then FQty:='0';
FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString);
if Trim(FMoney)='' then FMoney:='0';
FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString);
if Trim(FHuiLv)='' then FHuiLv:='0';
{FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString);
if Trim(FBBMoney)='' then FBBMoney:='0'; }
if Trim(FFieldName)<>'Money' then
begin
if Trim(FFieldName)<>'HuiLv' then
begin
FBBMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv));
FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice));
end else
begin
FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv));
end;
end else
begin
FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv));
end;
with CDS_HZ do
begin
Edit;
FieldByName('Money').Value:=StrToFloat(FMoney);
FieldByName('BBMoney').Value:=StrToFloat(FBBMoney);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set '+FFieldName+'='+Trim(mvalue));
if Trim(FFieldName)<>'Money' then
begin
sql.Add(',Money='+FMoney);
end;
sql.Add(',BBMoney='+FBBMoney);
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney);
sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+'''');
ExecSQL;
end;
tv2.Controller.EditingController.ShowEdit();
end;
procedure TfrmSKCR_YF.cxGridDBColumn1PropertiesEditValueChanged(
Sender: TObject);
var
mvalue,FFieldName:String;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_HZ do
begin
Edit;
FieldByName(FFieldName).Value:=Trim(mvalue);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
if Trim(mvalue)<>'' then
begin
sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+'''');
end else
begin
sql.Add(' Set '+FFieldName+'=NULL');
end;
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
tv2.Controller.EditingController.ShowEdit();
end;
procedure TfrmSKCR_YF.cxGridDBColumn3PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='YFName';
flagname:='<27><>Ŀ<EFBFBD><C4BF>ժҪ';
if Trim(DParameters3)='<27><>Ŀ<EFBFBD>ֿ<EFBFBD>' then
MainType:='<27>տ<EFBFBD>';
if ShowModal=1 then
begin
with Self.CDS_HZ do
begin
Edit;
FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString);
FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+'''');
sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmSKCR_YF.cxGridDBColumn6PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='OrderUnit';
flagname:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ';
if ShowModal=1 then
begin
Self.CDS_HZ.Edit;
Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmSKCR_YF.v2Column3PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='BZType';
flagname:='<27><><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
Self.CDS_HZ.Edit;
Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmSKCR_YF.ToolButton1Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then Exit;
SelExportData(Tv2,ADOQueryMain,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmSKCR_YF.v2Column4PropertiesEditValueChanged(Sender: TObject);
var
mvalue,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
if Trim(mvalue)='' then
begin
mvalue:='0';
end;
FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_HZ do
begin
Edit;
FieldByName(FFieldName).Value:=Trim(mvalue);
Post;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+'''');
Open;
end;
FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString;
FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString);
if Trim(FMoney)='' then FMoney:='0';
FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString);
if Trim(FHuiLv)='' then FHuiLv:='0';
{FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString);
if Trim(FBBMoney)='' then FBBMoney:='0'; }
FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv));
with CDS_HZ do
begin
Edit;
FieldByName('Money').Value:=StrToFloat(FMoney);
FieldByName('BBMoney').Value:=StrToFloat(FBBMoney);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set '+FFieldName+'='+Trim(mvalue));
sql.Add(',BBMoney='+FBBMoney);
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FKCBB+'-'+FBBMoney);
sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+'''');
ExecSQL;
end;
tv2.Controller.EditingController.ShowEdit();
end;
procedure TfrmSKCR_YF.v2Column1PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmProductOrderListSel:=TfrmProductOrderListSel.Create(Application);
with frmProductOrderListSel do
begin
FFInt:=1;
//frmProductOrderList.v1Column4.Visible:=True;
if ShowModal=1 then
begin
with Self.CDS_HZ do
begin
Edit;
FieldByName('MainId').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('MainId').AsString);
FieldByName('OrderNo').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('OrderNo').AsString);
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set MainId='''+Trim(frmProductOrderListSel.Order_Main.fieldbyname('MainId').AsString)+'''');
sql.Add(' ,OrderNo='''+Trim(frmProductOrderListSel.Order_Main.fieldbyname('OrderNo').AsString)+'''');
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
end;
end;
end;
finally
frmProductOrderListSel.Free;
end;
end;
procedure TfrmSKCR_YF.VBBPropertiesEditValueChanged(Sender: TObject);
var
mvalue,FKCBB:string;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+'''');
Open;
end;
FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString;
if Trim(mvalue)='' then mvalue:='0';
with CDS_HZ do
begin
Edit;
FieldByName('BBMoney').Value:=StrToFloat(mvalue);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' set BBMoney='+mvalue);
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney+'+FKCBB+'-'+mvalue);
sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+'''');
ExecSQL;
end;
tv2.Controller.EditingController.ShowEdit();
end;
procedure TfrmSKCR_YF.ConNoChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmSKCR_YF.v2Column1PropertiesEditValueChanged(Sender: TObject);
var
mvalue,FFieldName:String;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_HZ do
begin
Edit;
FieldByName(FFieldName).Value:=Trim(mvalue);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+'''');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
tv2.Controller.EditingController.ShowEdit();
end;
procedure TfrmSKCR_YF.v2DerateMoneyPropertiesEditValueChanged(
Sender: TObject);
var
mvalue:string;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
if Trim(mvalue)='' then mvalue:='0';
with CDS_HZ do
begin
Edit;
FieldByName('DerateMoney').Value:=StrToFloatdef(mvalue,0);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' set DerateMoney='+mvalue);
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
tv2.Controller.EditingController.ShowEdit();
end;
procedure TfrmSKCR_YF.cxTabControl1Change(Sender: TObject);
begin
SetStatus();
InitGrid();
end;
procedure TfrmSKCR_YF.v2ComTaitouPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='ComTaiTou';
flagname:='<27><>˾̧ͷ';
if ShowModal=1 then
begin
with Self.CDS_HZ do
begin
Edit;
FieldByName('ComTaiTou').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set ComTaiTou='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmSKCR_YF.TCKClick(Sender: TObject);
begin
if CDS_HZ.IsEmpty then exit;
FrmJYOrderYS:=TFrmJYOrderYS.create(self);
with FrmJYOrderYS do
begin
FConnO:=trim(CDS_HZ.fieldbyname('Mainid').AsString);
FYWY:=trim(CDS_HZ.fieldbyname('orderNo').AsString);
FKHName:=trim(CDS_HZ.fieldbyname('CustomerNoName').AsString);
FMaoLMoney:=trim(CDS_HZ.fieldbyname('MLMoney').AsString);
FYGMoney:=trim(CDS_HZ.fieldbyname('YGMoney').AsString);
if showmodal=1 then
begin
initgrid();
end;
free;
end;
end;
procedure TfrmSKCR_YF.Tv2CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
var
FName:string;
begin
FName:=tv2.Controller.FocusedColumn.DataBinding.FilterFieldName;
end;
procedure TfrmSKCR_YF.FormCreate(Sender: TObject);
begin
cxGrid2.Align:=alClient;
end;
procedure TfrmSKCR_YF.ConNoKeyPress(Sender: TObject; var Key: Char);
var ZDY:string;
begin
end;
procedure TfrmSKCR_YF.TPrintClick(Sender: TObject);
var fPrintFile:string;
FPBPS,FPBQty,FPBMoney:double;
FRFPS,FRFQty,FRFMoney:double;
FPS,FQty,FRMBMoney,FUSDMoney:double;
FSKRMBMoney,FSKUSDMoney:double;
begin
if CDS_HZ.IsEmpty then exit;
with Adoquery1 do
begin
close;
sql.clear;
sql.add('select AAA.PBChang,AAA.QtyUnit,AAA.ConNo,AAA.CRTime,AAA.Price,AAA.P_CodeName,TTPS=cast(sum(Qty/DJRKQty*PiQty) as decimal(18,0)) ');
sql.add(',TTQty=cast(sum(Qty/DJRKQty*PBQty) as decimal(18,2)),PBMoney=cast(sum(Qty/DJRKQty*PBQty)*Price as decimal(18,2)) ');
sql.add('from (select AA.PBChang,AA.QtyUnit,C.ConNo,AA.CRTime,AA.Price,AA.P_CodeName,C.Qty,AA.PiQty,AA.Qty PBQty,AA.DJRKQty ');
sql.add('from (select B.PBChang,B.QtyUnit,B.CRTime,B.Price,isnull(M.Mainid,W.Mainid) Mainid,B.P_CodeName,isnull(Q.PiQty,B.PS) PiQty,isnull(Q.Qty,B.Qty) Qty ');
sql.add(',DJRKQty=(select Sum(P.Qty) from CK_SXPB_CR B inner join CK_SXPB_CR P on P.FZSPID=B.SPID where B.ORDMainIdRK=isnull(M.MainId,W.Mainid) ');
sql.add(' and P.CRFlag=''<27><><EFBFBD><EFBFBD>'' and isnull(B.CKName,'''')=''<27><><EFBFBD>첼'' and isnull(B.CRType,'''') in (''<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD>'',''<27>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD>'')) ');
sql.add('from YF_Money_CR B inner join JYOrder_Main W on B.OrderNo=W.OrderNo ');
sql.add('left join CK_SXPB_CR Q on B.YFTypeId=Q.FZSPID and isnull(Q.CKName,'''')=''<27><><EFBFBD><EFBFBD>'' and Q.CRType=''<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD>'' ');
sql.add('left join JYOrder_Main M on Q.OrdMainidCK=M.Mainid ');
sql.add('where isnull(B.YFName,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and B.status=''2'' ');
sql.add('union all ');
sql.add('select D.FactoryName PBChang,D.QtyUnit,D.CRTime,D.GCPrice Price,isnull(M.Mainid,W.Mainid) Mainid,D.P_CodeName,isnull(F.PiQty,D.ps) piQty,isnull(F.Qty,D.Qty) Qty ');
sql.add(',DJRKQty=(select Sum(P.Qty) from CK_SXPB_CR B inner join CK_SXPB_CR P on P.FZSPID=B.SPID where B.ORDMainIdRK=isnull(M.MainId,W.Mainid) ');
sql.add(' and P.CRFlag=''<27><><EFBFBD><EFBFBD>'' and isnull(B.CKName,'''')=''<27><><EFBFBD>첼'' and isnull(B.CRType,'''') in (''<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD>'',''<27>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD>'')) ');
sql.add('from YF_Money_CR D inner join JYOrder_Main W on D.OrderNo=W.OrderNo ');
sql.add('left join CK_SXPB_CR F on D.YFTypeId=F.FZSPID and isnull(F.CRType,'''') in (''<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD>'',''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'') ');
sql.add('left join JYOrder_Main M on F.OrdMainidCK=M.Mainid ');
sql.add('where isnull(D.YFName,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and D.status=''2'' ');
sql.add(') AA inner join CK_SXPB_CR C on C.ORDMainidRK=AA.Mainid and isnull(C.CKName,'''')=''<27><><EFBFBD>첼'' and isnull(C.CRFlag,'''')=''<27><><EFBFBD><EFBFBD>'' ');
sql.add('and exists(select Q.SPID from CK_SXPB_CR Q where Q.SPID=C.FZSPID and isnull(Q.CRType,'''') in (''<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD>'',''<27>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD>''))) AAA ');
sql.add('where AAA.ConNo='''+trim(CDS_HZ.fieldbyname('ConNO').AsString)+''' ');
sql.add('group by AAA.PBChang,AAA.QtyUnit,AAA.ConNo,AAA.CRTime,AAA.Price,AAA.P_CodeName');
open;
end;
SCreateCDS20(Adoquery1,Order_PB);
SInitCDSData20(Adoquery1,Order_PB);
FPBPS:=0;FPBQty:=0;FPBMoney:=0;
with Order_PB do
begin
first;
while not eof do
begin
FPBPS:=FPBPS+fieldbyname('TTPS').AsFloat;
FPBQty:=FPBQty+fieldbyname('TTQty').AsFloat;
FPBMoney:=FPBMoney+fieldbyname('PBMoney').AsFloat;
next;
end;
end;
with AdoQuery1 do
begin
close;
sql.clear;
sql.add('select AAA.*,SH=(case when PBQty=0 then 0 else cast((PBQty-JGQty)/PBQty as decimal(18,2)) end) ');
sql.add('from (select AA.QtyUnit,D.ConNo,Q.CRTime,AA.P_CodeName,AA.PRTColor,JGPS=cast(sum(D.Qty/DJRKQty*AA.PS) as decimal(18,0)),JGQty=cast(sum(D.Qty/DJRKQty*AA.Qty) as decimal(18,2)),');
sql.add('AA.GCPrice,AA.FactoryName,JGMoney=cast(sum(GCPrice*D.Qty/DJRKQty*AA.Qty) as decimal(18,2)),PBQty=cast(sum(D.Qty/DJRKQty*TPQty) as decimal(18,2)) ');
sql.add('from (select A.QtyUnit,A.OrderNo,A.P_CodeName,Sum(A.ps) PS,sum(A.Qty) Qty,A.GCPrice,A.FactoryName,(select P.PRTColor from JYOrder_Sub P where P.SubId=A.ZSDSubid) PRTColor,A.ZSDSubid Subid,');
sql.add('TPQty=(select SUM(Qty) from CK_SXPB_CR F where F.ORDSubIdCK=A.ZSDSubid and isnull(F.CKName,'''')=''<27><><EFBFBD><EFBFBD>'' and isnull(F.CRType,'''')=''<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD>''),');
sql.add('DJRKQty=(select SUM(P.Qty) from CK_SXPB_CR F inner join CK_SXPB_CR P on P.FZSPID=F.SPID where F.ORDSubIdRK=A.ZSDSubid and F.FactoryName=A.FactoryName ');
sql.add('and P.CRFlag=''<27><><EFBFBD><EFBFBD>'' and isnull(F.CKName,'''')=''<27><><EFBFBD>첼'' and isnull(F.CRType,'''') in (''<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD>'',''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'')) ');
sql.add('from YF_Money_CR A ');
sql.add('where isnull(A.YFName,'''') in (''<27>ӹ<EFBFBD><D3B9><EFBFBD>'',''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɷ<EFBFBD>'') and A.status=''2'' and ');
Sql.add('not exists (select N.SPID from CK_SXPB_CR N where N.SPID=A.Mainid and isnull(N.CKName,'''') in (''<27><><EFBFBD><EFBFBD>'','<><C9B4>'',''<27><><EFBFBD>ӹ<EFBFBD>'')) ');
sql.add('group by A.QtyUnit,A.OrderNo,A.P_CodeName,A.GCPrice,A.FactoryName,A.ZSDSubid ');
sql.add('union all');
sql.add('select A.QtyUnit,A.OrderNo,A.P_CodeName,ps=-Sum(A.ps),Qty=-sum(A.Qty),GCPrice=cast(0 as decimal(18,2)),A.FactoryName,PRTColor=cast('''' as varchar(50)),A.ZSDSubid Subid,');
sql.add('TPQty=cast(0 as decimal(18,2)), ');
sql.add('DJRKQty=(select SUM(P.Qty) from CK_SXPB_CR F inner join CK_SXPB_CR P on P.FZSPID=F.SPID where F.ORDSubIdRK=A.ZSDSubid and F.FactoryName=A.FactoryName ');
sql.add('and P.CRFlag=''<27><><EFBFBD><EFBFBD>'' and isnull(F.CKName,'''')=''<27><><EFBFBD>첼'' and isnull(F.CRType,'''') in (''<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD>'',''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'')) ');
sql.add('from YF_Money_CR A ');
sql.add('left join CK_SXPB_CR B on B.SPID=A.MainId and isnull(B.CKName,'''') in (''<27><><EFBFBD>ӹ<EFBFBD>'',''<27><><EFBFBD>첼'') and isnull(B.CRFlag,'''')=''<27><><EFBFBD><EFBFBD>'' ');
sql.add('where isnull(A.YFName,'''') in (''<27>ӹ<EFBFBD><D3B9><EFBFBD>'',''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɷ<EFBFBD>'') and A.status=''2'' and ISNULL(B.ORDSubIdRK,'''')='''' and ');
Sql.add('not exists (select N.SPID from CK_SXPB_CR N where N.SPID=A.Mainid and isnull(N.CKName,'''') in (''<27><><EFBFBD><EFBFBD>'','<><C9B4>'',''<27><><EFBFBD>ӹ<EFBFBD>''))');
sql.add('group by A.QtyUnit,A.OrderNo,A.P_CodeName,A.GCPrice,A.FactoryName,A.ZSDSubid) AA ');
sql.add('inner join CK_SXPB_CR D on D.ordSubidRK=AA.Subid and isnull(D.CKName,'''')=''<27><><EFBFBD>첼'' and isnull(D.CRFlag,'''')=''<27><><EFBFBD><EFBFBD>'' and D.FactoryName=AA.FactoryName ');
sql.add('inner join CK_SXPB_CR Q on D.FZSPID=Q.SPID and isnull(Q.CRFlag,'''')=''<27><><EFBFBD><EFBFBD>'' and isnull(Q.CRType,'''') in (''<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD>'',''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'') ');
sql.add('where D.ConNo='''+trim(CDS_HZ.fieldbyname('ConNO').AsString)+''' and AA.ps>0 ');
sql.add('group by AA.QtyUnit,D.ConNo,Q.CRTime,AA.P_CodeName,AA.PRTColor,AA.GCPrice,AA.FactoryName) AAA');
open;
end;
SCreateCDS20(Adoquery1,Order_RF);
SInitCDSData20(Adoquery1,Order_RF);
FRFPS:=0;FRFQty:=0;FRFMoney:=0;
with Order_RF do
begin
first;
while not eof do
begin
FRFPS:=FRFPS+fieldbyname('JGPS').AsFloat;
FRFQty:=FRFQty+fieldbyname('JGQty').AsFloat;
FRFMoney:=FRFMoney+fieldbyname('JGMoney').AsFloat;
next;
end;
end;
with AdoQuery1 do
begin
close;
sql.clear;
sql.add('select A.ConNo,A.CRTime,A.QtyUnit,isnull(A.P_CodeName,E.PrtCodeName) P_CodeName,isnull(E.PRTColor,E.SOrdDefStr4) PRTColor,A.BZType,A.Price,sum(A.ps) PS,sum(A.Qty) Qty');
sql.add(',RMBMoney=(case when (A.BZType<>''$'') and (A.BZType<>''USD'') then sum(Money) else 0 end)');
sql.add(',USDMoney=(case when (A.BZType<>''<27><>'') and (A.BZType<>''RMB'') then sum(Money) else 0 end)');
sql.add('from YF_Money_CR A ');
sql.add('left join JYOrderCon_Sub E on E.Subid=A.Conid ');
sql.add('where A.ConNo='''+trim(CDS_HZ.fieldbyname('ConNO').AsString)+''' and A.CRType='<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>'' ');
sql.add(' and (((A.YFName=''<27><>Ʒ<EFBFBD><C6B7><EFBFBD>۽<EFBFBD><DBBD><EFBFBD>'' or Isnull(A.FeeType,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'') ');
sql.add(' and A.status=''3'') or (A.YFName<>''<27><>Ʒ<EFBFBD><C6B7><EFBFBD>۽<EFBFBD><DBBD><EFBFBD>'' and A.YFName=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۽<EFBFBD><DBBD><EFBFBD>'' and A.Status=''2'')) ');
sql.add('group by A.ConNo,A.CRTime,A.QtyUnit,A.P_CodeName,E.PrtCodeName,E.PRTColor,E.SOrdDefStr4,A.BZType,A.Price');
open;
end;
SCreateCDS20(Adoquery1,Order_XS);
SInitCDSData20(Adoquery1,Order_XS);
FPS:=0;FQty:=0;FRMBMoney:=0;FUSDMoney:=0;
with Order_XS do
begin
first;
while not eof do
begin
FPS:=FPS+fieldbyname('PS').asfloat;
FQty:=FQty+fieldbyname('Qty').asfloat;
FRMBMoney:=FRMBMoney+fieldbyname('RMBMoney').asfloat;
FUSDMoney:=FUSDMoney+fieldbyname('USDMoney').asfloat;
next;
end;
end;
with AdoQuery1 do
begin
close;
sql.clear;
sql.add('select B.ConNo,A.CRTime,A.BZType,A.note');
sql.add(',Huilv=isnull((select top 1 C.HuiLV from JYOrder_HuiLV C where A.CRTime>=C.BegDate and A.CRTime<isnull(C.EndDate,A.CRTime+1) and A.BZType<>''<27><>'' and A.BZType<>''RMB'' and C.GSType=A.GSType),1)');
sql.add(',RMBMoney=cast((sum(E.RLMoney)*isnull((select TOP 1 C.HuiLV From JYOrder_HuiLV C where A.CRTime>=C.BegDate and A.CRTime<isnull(C.EndDate,A.CRTime+1) and A.BZType<>''<27><>'' and A.BZType<>''RMB'' and C.GSType=A.GSType),1)) as decimal(18,2))');
sql.add(',USDMoney=(case when (A.BZType<>''<27><>'') and (A.BZType<>''RMB'') then sum(E.RLMoney) else 0 end)');
sql.add('from YF_Money_CR A ');
sql.add('inner join JYOrderYSK E on E.YFID=A.YFID ');
sql.add('inner join JYOrderCon_Main B on B.Mainid=E.Mainid ');
sql.add('where B.ConNo='''+trim(CDS_HZ.fieldbyname('ConNO').AsString)+''' and A.CRType=''<27>տ<EFBFBD><D5BF>Ǽ<EFBFBD>'' ');
sql.add('group by B.ConNo,A.CRTime,A.BZType,A.note,A.GSType');
open;
end;
SCreateCDS20(Adoquery1,Order_SK);
SInitCDSData20(Adoquery1,Order_SK);
FSKRMBMoney:=0;FSKUSDMoney:=0;
with Order_SK do
begin
first;
while not eof do
begin
FSKRMBMoney:=FSKRMBMoney+fieldbyname('RMBMoney').asfloat;
FSKUSDMoney:=FSKUSDMoney+fieldbyname('USDMoney').asfloat;
next;
end;
end;
with AdoQuery1 do
begin
close;
sql.clear;
sql.add('select A.ConNo,A.CRTime,A.YFName,A.BZType,A.Note ');
sql.add(',Huilv=isnull((select top 1 C.HuiLV from JYOrder_HuiLV C where A.CRTime>=C.BegDate and A.CRTime<isnull(C.EndDate,A.CRTime+1) and A.BZType<>''<27><>'' and A.BZType<>''RMB'' and C.GSType=A.GSType),1)');
sql.add(',RMBMoney=cast((sum(A.Money)*isnull((select TOP 1 C.HuiLV From JYOrder_HuiLV C where A.CRTime>=C.BegDate and A.CRTime<isnull(C.EndDate,A.CRTime+1) and A.BZType<>''<27><>'' and A.BZType<>''RMB'' and C.GSType=A.GSType),1)) as decimal(18,2))');
sql.add(',USDMoney=(case when (A.BZType<>''<27><>'') and (A.BZType<>''RMB'') then sum(A.Money) else 0 end) ');
sql.add('from YF_Money_CR A ');
sql.add('where A.ConNo='''+trim(CDS_HZ.fieldbyname('ConNO').AsString)+''' and A.CRType='<><D3A6><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>'' and isnull(FeeType,'''')=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
sql.add('group by A.ConNo,A.CRTime,A.YFName,A.BZType,A.GSType,A.Note');
open;
end;
SCreateCDS20(Adoquery1,Order_FYZC);
SInitCDSData20(Adoquery1,Order_FYZC);
fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.rmf';
if FileExists(fPrintFile) then
begin
RMVariables['FConNo']:=trim(CDS_HZ.fieldbyname('ConNO').asstring);
RMVariables['FConPerson1']:=trim(CDS_HZ.fieldbyname('ConPerson1').asstring);
RMVariables['FCustomerNoName']:=trim(CDS_HZ.fieldbyname('CustomerNoName').asstring);
RMVariables['MLMoney']:=CDS_HZ.fieldbyname('MLMoney').AsFloat;
RMVariables['YGMoney']:=CDS_HZ.fieldbyname('YGMoney').AsFloat;
RMVariables['FPBPS']:=FPBPS;
RMVariables['FPBQty']:=FPBQty;
RMVariables['FPBMoney']:=FPBMoney;
RMVariables['FRFPS']:=FRFPS;
RMVariables['FRFQty']:=FRFQty;
RMVariables['FRFMoney']:=FRFMoney;
RMVariables['FPS']:=FPS;
RMVariables['FQty']:=FQty;
RMVariables['FRMBMoney']:=FRMBMoney;
RMVariables['FUSDMoney']:=FUSDMoney;
RMVariables['FSKRMBMoney']:=FSKRMBMoney;
RMVariables['FSKUSDMoney']:=FSKUSDMoney;
RM1.LoadFromFile(fPrintFile);
RM1.ShowReport;
end else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>'+ExtractFilePath(Application.ExeName)+'Report\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.rmf'),'<27><>ʾ',0);
end;
end;
procedure TfrmSKCR_YF.ComboBox1Change(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmSKCR_YF.RadioGroup1Click(Sender: TObject);
begin
InitGrid();
end;
end.