870 lines
24 KiB
ObjectPascal
870 lines
24 KiB
ObjectPascal
unit U_OrderHSInPutTS;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
|
||
cxEdit, DB, cxDBData, ADODB, DBClient, cxGridLevel, cxGridCustomTableView,
|
||
cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView,
|
||
cxGrid, ComCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, cxTextEdit,
|
||
cxButtonEdit, StdCtrls, ExtCtrls, cxCurrencyEdit, BtnEdit,
|
||
cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, cxDropDownEdit,
|
||
Menus, cxButtons, IdBaseComponent, IdComponent, IdTCPConnection,
|
||
IdTCPClient, IdFTP, ImgList,ShellAPI,StrUtils;
|
||
|
||
type
|
||
TfrmOrderHSInPutTS = class(TForm)
|
||
ToolBar1: TToolBar;
|
||
TBSave: TToolButton;
|
||
TBClose: TToolButton;
|
||
CDS_Sub: TClientDataSet;
|
||
ADOQueryMain: TADOQuery;
|
||
DataSource1: TDataSource;
|
||
ADOQueryCmd: TADOQuery;
|
||
ADOQueryTemp: TADOQuery;
|
||
ScrollBox1: TScrollBox;
|
||
Label23: TLabel;
|
||
XDDate: TDateTimePicker;
|
||
cxGrid1: TcxGrid;
|
||
Tv1: TcxGridDBTableView;
|
||
v2Column12: TcxGridDBColumn;
|
||
v2Column15: TcxGridDBColumn;
|
||
v2Column7: TcxGridDBColumn;
|
||
cxGridLevel1: TcxGridLevel;
|
||
Label29: TLabel;
|
||
CPPS: TEdit;
|
||
CPQty: TEdit;
|
||
Label4: TLabel;
|
||
HGYNote: TMemo;
|
||
XSQty: TEdit;
|
||
Label15: TLabel;
|
||
XSPrice: TEdit;
|
||
Label22: TLabel;
|
||
PriceType: TComboBox;
|
||
HuiLv: TEdit;
|
||
Label32: TLabel;
|
||
TBSel: TToolButton;
|
||
Tv1Column1: TcxGridDBColumn;
|
||
Tv1Column2: TcxGridDBColumn;
|
||
CPMoney: TEdit;
|
||
CPPriceAvg: TEdit;
|
||
Tv1Column3: TcxGridDBColumn;
|
||
Tv1Column4: TcxGridDBColumn;
|
||
Tv1Column5: TcxGridDBColumn;
|
||
Tv1Column9: TcxGridDBColumn;
|
||
Tv1Column10: TcxGridDBColumn;
|
||
Label16: TLabel;
|
||
Label17: TLabel;
|
||
FKType: TBtnEditC;
|
||
Label18: TLabel;
|
||
XSMoney: TEdit;
|
||
Label20: TLabel;
|
||
XSMoneyRMB: TEdit;
|
||
Label21: TLabel;
|
||
Label24: TLabel;
|
||
LiRun: TEdit;
|
||
LiRunLv: TEdit;
|
||
Label26: TLabel;
|
||
Label47: TLabel;
|
||
Label48: TLabel;
|
||
HSGongShi: TEdit;
|
||
ListView1: TListView;
|
||
Panel2: TPanel;
|
||
cxButton1: TcxButton;
|
||
Label49: TLabel;
|
||
ImageList1: TImageList;
|
||
IdFTP1: TIdFTP;
|
||
ADOQueryTmp: TADOQuery;
|
||
Tv1Column6: TcxGridDBColumn;
|
||
Tv1Column7: TcxGridDBColumn;
|
||
Tv1Column8: TcxGridDBColumn;
|
||
BZType: TEdit;
|
||
XSUnit: TEdit;
|
||
Label43: TLabel;
|
||
Label44: TLabel;
|
||
Label45: TLabel;
|
||
Label46: TLabel;
|
||
PBUnit: TComboBox;
|
||
Label38: TLabel;
|
||
TuiShui: TEdit;
|
||
TuiShuiFlag: TCheckBox;
|
||
Label11: TLabel;
|
||
HYFee: TEdit;
|
||
HYFeeUnit: TComboBox;
|
||
Label52: TLabel;
|
||
YongJin: TEdit;
|
||
Label6: TLabel;
|
||
ShuiLv: TComboBox;
|
||
ShuiFee: TEdit;
|
||
Label54: TLabel;
|
||
SXFee: TEdit;
|
||
procedure FormShow(Sender: TObject);
|
||
procedure TBCloseClick(Sender: TObject);
|
||
procedure TBSaveClick(Sender: TObject);
|
||
procedure TBSelClick(Sender: TObject);
|
||
procedure Tv1DblClick(Sender: TObject);
|
||
procedure PBQtyChange(Sender: TObject);
|
||
procedure Tv1Column3PropertiesEditValueChanged(Sender: TObject);
|
||
procedure FKTypeBtnUpClick(Sender: TObject);
|
||
procedure FKTypeBtnDnClick(Sender: TObject);
|
||
procedure cxButton1Click(Sender: TObject);
|
||
procedure ListView1DblClick(Sender: TObject);
|
||
procedure Tv1Column6PropertiesEditValueChanged(Sender: TObject);
|
||
procedure Tv1Column7PropertiesEditValueChanged(Sender: TObject);
|
||
procedure Tv1Column10PropertiesEditValueChanged(Sender: TObject);
|
||
procedure TuiShuiFlagClick(Sender: TObject);
|
||
private
|
||
procedure InitSubGrid();
|
||
function SaveData(): Boolean;
|
||
procedure GetData();
|
||
procedure InitFJData();
|
||
{ Private declarations }
|
||
public
|
||
FCYID,GDFalg:String;
|
||
|
||
{ Public declarations }
|
||
end;
|
||
|
||
var
|
||
frmOrderHSInPutTS: TfrmOrderHSInPutTS;
|
||
newh: hwnd;
|
||
implementation
|
||
|
||
uses
|
||
U_DataLink, U_RTFun, U_iniParam, U_ZDYHelp,U_ContractListSel, U_FjList;
|
||
|
||
{$R *.dfm}
|
||
|
||
procedure TfrmOrderHSInPutTS.InitSubGrid();
|
||
begin
|
||
|
||
try
|
||
ADOQueryMain.DisableControls;
|
||
with ADOQueryMain do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
SQL.Add('select * from Order_HS where HSID=''' + Trim(FCYID) + '''');
|
||
Open;
|
||
end;
|
||
SCSHDataNew(ADOQueryMain, ScrollBox1, 2);
|
||
with ADOQueryMain do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from Order_HS_OrderNo where HSID=''' + Trim(FCYID) + '''');
|
||
Open;
|
||
end;
|
||
SCreateCDS20(ADOQueryMain,CDS_Sub);
|
||
SInitCDSData20(ADOQueryMain,CDS_Sub);
|
||
if CDS_Sub.IsEmpty then
|
||
begin
|
||
XDDate.Date:=SGetServerDate(ADOQueryTemp);
|
||
end;
|
||
GDFalg:='';
|
||
finally
|
||
ADOQueryMain.EnableControls;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmOrderHSInPutTS.FormShow(Sender: TObject);
|
||
begin
|
||
InitSubGrid();
|
||
if Trim(FCYID)<>'' then
|
||
begin
|
||
InitFJData();
|
||
end;
|
||
|
||
end;
|
||
|
||
procedure TfrmOrderHSInPutTS.TBCloseClick(Sender: TObject);
|
||
begin
|
||
Close;
|
||
end;
|
||
|
||
function TfrmOrderHSInPutTS.SaveData(): Boolean;
|
||
var
|
||
maxId, Maxno,FHOID: string;
|
||
begin
|
||
try
|
||
ADOQueryCmd.Connection.BeginTrans;
|
||
if Trim(FCYID) = '' then
|
||
begin
|
||
if GetLSNoHZ(ADOQueryCmd, maxId, 'HS', 'Order_HS', 4, 1,3) = False then
|
||
begin
|
||
Result := False;
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
|
||
Exit;
|
||
end;
|
||
end
|
||
else
|
||
begin
|
||
maxId := Trim(FCYID);
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
sql.Add('select * from Order_HS where HSID=''' + Trim(FCYID) + '''');
|
||
Open;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
if Trim(FCYID) = '' then
|
||
begin
|
||
Append;
|
||
FieldByName('Filler').Value:=Trim(DName);
|
||
FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp);
|
||
FieldByName('Valid').Value:='Y';
|
||
FieldByName('HZStatus').Value:='<27><><EFBFBD>ύ';
|
||
FieldByName('HSTYpe').Value:='ͳ<><CDB3>';
|
||
end
|
||
else
|
||
begin
|
||
Edit;
|
||
FieldByName('Editer').Value:=Trim(DName);
|
||
FieldByName('EditTime').Value:=SGetServerDateTime(ADOQueryTemp);
|
||
end;
|
||
FieldByName('HSID').Value := Trim(maxId);
|
||
RTSetsavedata(ADOQueryCmd, 'Order_HS', ScrollBox1, 2);
|
||
Post;
|
||
end;
|
||
FCYID:=Trim(maxId);
|
||
CDS_Sub.DisableControls;
|
||
with CDS_Sub do
|
||
begin
|
||
First;
|
||
while not eof do
|
||
begin
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from Order_HS_OrderNo where HOID='''+Trim(CDS_Sub.fieldbyname('HOID').AsString)+'''');
|
||
open;
|
||
end;
|
||
FHOID:=Trim(ADOQueryCmd.fieldbyname('HOID').AsString);
|
||
if Trim(FHOID)='' then
|
||
begin
|
||
if GetLSNo(ADOQueryCmd,Maxno,'HO','Order_HS_OrderNo',3,1)=False then
|
||
begin
|
||
Result:=False;
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
end else
|
||
begin
|
||
Maxno:=Trim(FHOID);
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from Order_HS_OrderNo where HOID='''+Trim(Maxno)+'''');
|
||
Open;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
if Trim(FHOID)='' then
|
||
begin
|
||
Append;
|
||
end else
|
||
begin
|
||
Edit;
|
||
end;
|
||
FieldByName('HOID').Value:=Trim(Maxno);
|
||
FieldByName('HSID').Value:=Trim(maxId);
|
||
FieldByName('MainId').Value:=Trim(CDS_Sub.fieldbyname('MainId').AsString);
|
||
RTSetSaveDataCDS(ADOQueryCmd,Tv1,CDS_Sub,'Order_HS_OrderNo',2);
|
||
if Trim(FHOID)='' then
|
||
FieldByName('Filler').Value:=Trim(DName)
|
||
else
|
||
begin
|
||
FieldByName('Editer').Value:=Trim(DName);
|
||
FieldByName('EditTime').Value:=SGetServerDate(ADOQueryTemp);
|
||
end;
|
||
Post;
|
||
end;
|
||
Edit;
|
||
FieldByName('HOID').Value:=Trim(Maxno);
|
||
FieldByName('HSID').Value:=Trim(maxId);
|
||
Post;
|
||
Next;
|
||
end;
|
||
end;
|
||
CDS_Sub.EnableControls;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' exec P_Update_HSInfo_JD :HSID');
|
||
Parameters.ParamByName('HSID').Value:=Trim(maxId);
|
||
ExecSQL;
|
||
end;
|
||
ADOQueryCmd.Connection.CommitTrans;
|
||
Result := True;
|
||
except
|
||
Result := False;
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmOrderHSInPutTS.TBSaveClick(Sender: TObject);
|
||
var
|
||
FKHName,FYWY,FSPName,FLiDan,FDate:string;
|
||
begin
|
||
if CDS_Sub.IsEmpty then
|
||
begin
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ', 0);
|
||
Exit;
|
||
end;
|
||
FDate:=FormatDateTime('yyyy-MM-dd',SGetServerDate(ADOQueryTmp));
|
||
if Trim(FDate)=Trim(FormatDateTime('yyyy-MM-dd',XDDate.Date)) then
|
||
begin
|
||
Application.MessageBox('<27>µ<EFBFBD>ʱ<EFBFBD><CAB1>û<EFBFBD><C3BB>ѡ<EFBFBD><D1A1>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if Trim(BZType.Text)='' then
|
||
begin
|
||
Application.MessageBox('<27><><EFBFBD>ֲ<EFBFBD><D6B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
FKHName:=Trim(CDS_Sub.fieldbyname('KHName').AsString);
|
||
FYWY:=Trim(CDS_Sub.fieldbyname('YWY').AsString);
|
||
FSPName:=Trim(CDS_Sub.fieldbyname('SPName').AsString);
|
||
FLiDan:=Trim(CDS_Sub.fieldbyname('LiDan').AsString);
|
||
CDS_Sub.DisableControls;
|
||
with CDS_Sub do
|
||
begin
|
||
first;
|
||
while not Eof do
|
||
begin
|
||
if FKHName <> trim(CDS_Sub.fieldbyname('KHName').AsString) then
|
||
begin
|
||
CDS_Sub.EnableControls;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD>', '<27><>ʾ', 0);
|
||
Exit;
|
||
end;
|
||
if FYWY <> trim(CDS_Sub.fieldbyname('YWY').AsString) then
|
||
begin
|
||
CDS_Sub.EnableControls;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5>Ա<EFBFBD><D4B1>', '<27><>ʾ', 0);
|
||
Exit;
|
||
end;
|
||
if FSPName <> trim(CDS_Sub.fieldbyname('SPName').AsString) then
|
||
begin
|
||
CDS_Sub.EnableControls;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>', '<27><>ʾ', 0);
|
||
Exit;
|
||
end;
|
||
if FLiDan <> trim(CDS_Sub.fieldbyname('LiDan').AsString) then
|
||
begin
|
||
CDS_Sub.EnableControls;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
|
||
Exit;
|
||
end;
|
||
Next;
|
||
end;
|
||
end;
|
||
CDS_Sub.EnableControls;
|
||
|
||
if SaveData() then
|
||
begin
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ', 0);
|
||
Exit;
|
||
//ModalResult := 1;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmOrderHSInPutTS.TBSelClick(Sender: TObject);
|
||
begin
|
||
try
|
||
frmContractListSel := TfrmContractListSel.Create(Application);
|
||
with frmContractListSel do
|
||
begin
|
||
if ShowModal = 1 then
|
||
begin
|
||
with Order_Main do
|
||
begin
|
||
First;
|
||
while Order_Main.locate('SSel', true, []) do
|
||
begin
|
||
if self.CDS_Sub.Locate('OrderNo',Trim(Order_Main.Fieldbyname('OrderNo').AsString),[])=False then
|
||
begin
|
||
with Self.ADOQueryTemp do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select Top 1 SCSUnit');
|
||
sql.Add(',CPUnit=(select Top 1 CK.QtyUnit from CK_SXPB_CR CK inner join JYOrder_Main JM on CK.ORDMainIdRK=JM.Mainid where JM.ConNo=A.ConNo)');
|
||
sql.Add(' from SalesContract_Main A ');
|
||
sql.Add(' inner join SalesContract_Sub B on A.MainId=B.MainId');
|
||
sql.Add(' where A.ConNo='''+Trim(frmContractListSel.Order_Main.Fieldbyname('OrderNo').AsString)+'''');
|
||
Open;
|
||
end;
|
||
with self.CDS_Sub do
|
||
begin
|
||
append;
|
||
Fieldbyname('MainId').value := trim(frmContractListSel.Order_Main.Fieldbyname('MainId').AsString);
|
||
Fieldbyname('OrderNo').value := trim(frmContractListSel.Order_Main.Fieldbyname('OrderNo').AsString);
|
||
Fieldbyname('KHName').value := trim(frmContractListSel.Order_Main.Fieldbyname('BuyName').AsString);
|
||
Fieldbyname('YWY').value := trim(frmContractListSel.Order_Main.Fieldbyname('Salesman').AsString);
|
||
Fieldbyname('LiDan').value := trim(frmContractListSel.Order_Main.Fieldbyname('LiDan').AsString);
|
||
Fieldbyname('SPName').value := trim(frmContractListSel.Order_Main.Fieldbyname('MPRTCodeName').AsString);
|
||
Fieldbyname('XSUnit').value := trim(Self.ADOQueryTemp.Fieldbyname('SCSUnit').AsString);
|
||
if Trim(Self.ADOQueryTemp.Fieldbyname('CPUnit').AsString)<>'' then
|
||
begin
|
||
Fieldbyname('CPUnit').value := trim(Self.ADOQueryTemp.Fieldbyname('CPUnit').AsString);
|
||
end else
|
||
begin
|
||
Fieldbyname('CPUnit').value :='Kg';
|
||
end;
|
||
end;
|
||
if Trim(PBUnit.Text)='' then
|
||
begin
|
||
PBUnit.Text:=trim(Self.ADOQueryTemp.Fieldbyname('CPUnit').AsString);
|
||
end;
|
||
if Trim(XSUnit.Text)='' then
|
||
begin
|
||
XSUnit.Text:=trim(Self.ADOQueryTemp.Fieldbyname('SCSUnit').AsString);
|
||
end;
|
||
end;
|
||
Order_Main.Delete;
|
||
end;
|
||
end;
|
||
end;
|
||
end;
|
||
finally
|
||
frmContractListSel.Free;
|
||
end;
|
||
end;
|
||
procedure TfrmOrderHSInPutTS.GetData();
|
||
var
|
||
FPBQty,FPBMoney,FRSQty,FRSMoney,FHGYQty,FHGYMoney,FCPPS,FCPQty,FCPMoney,
|
||
FTuiShui,FShuilv,FShuiFee,FXDXS,FXDFee,FBXFee,FFOBFee,FKPFee,FDJPrice,FDJFee,FKLFee,FHYFee,FZaFee,FYongJin,FSXFee,
|
||
FXSQty,FXSPrice,FXSMoney,FHuiLv,FXSMoneyRMB,FLiRun,FLiRunLv,FXSMoneyHJ:string;
|
||
begin
|
||
if GDFalg<>'' then Exit;
|
||
FCPMoney:=Trim(CPMoney.Text);
|
||
if Trim(FCPMoney)='' then FCPMoney:='0';
|
||
if CDS_Sub.IsEmpty=False then
|
||
begin
|
||
FCPPS:=FloatToStr(RoundFloat(StrToFloat(Tv1.DataController.Summary.FooterSummaryTexts[0]),0));
|
||
end else
|
||
begin
|
||
FCPPS:='0';
|
||
end;
|
||
|
||
if StrToFloat(FCPPS)<>0 then CPPS.Text:=FCPPS else CPPS.Text:='';
|
||
if CDS_Sub.IsEmpty=False then
|
||
begin
|
||
FCPQty:=FloatToStr(RoundFloat(StrToFloat(Tv1.DataController.Summary.FooterSummaryTexts[1]),2));
|
||
end else
|
||
begin
|
||
FCPQty:='0';
|
||
end;
|
||
|
||
if StrToFloat(FCPQty)<>0 then CPQty.Text:=FCPQty else CPQty.Text:='';
|
||
if StrToFloat(FCPQty)<>0 then CPPriceAvg.Text:=FloatToStr(RoundFloat(StrToFloat(FCPMoney)/StrToFloat(FCPQty),2)) else CPPriceAvg.Text:='';
|
||
|
||
if TuiShuiFlag.Checked=True then
|
||
begin
|
||
FTuiShui:=FloatToStr(RoundFloat((StrToFloat(FCPMoney)*0.13/1.13),2));
|
||
end else
|
||
begin
|
||
FTuiShui:='0';
|
||
end;
|
||
if StrToFloat(FTuiShui)<>0 then TuiShui.Text:=FTuiShui else TuiShui.Text:='';
|
||
|
||
FShuilv:=Trim(ShuiLv.Text); if Trim(FShuilv)='' then FShuilv:='0';
|
||
if (StrToFloat(FShuilv)<>0) and (StrToFloat(FCPMoney)<>0) then
|
||
begin
|
||
FShuiFee:=FloatToStr(RoundFloat((StrToFloat(FShuilv)*StrToFloat(FCPMoney)),2));ShuiFee.Text:=FShuiFee;
|
||
end else
|
||
begin
|
||
FShuiFee:='0';ShuiFee.Text:='';
|
||
end;
|
||
|
||
if CDS_Sub.IsEmpty=False then
|
||
begin
|
||
FXSQty:=FloatToStr(RoundFloat(StrToFloat(Tv1.DataController.Summary.FooterSummaryTexts[2]),2));
|
||
end else
|
||
begin
|
||
FXSQty:='0';
|
||
end;
|
||
|
||
if StrToFloat(FXSQty)<>0 then XSQty.Text:=FXSQty else XSQty.Text:='';
|
||
if CDS_Sub.IsEmpty=False then
|
||
begin
|
||
FXSMoneyHJ:=FloatToStr(RoundFloat(StrToFloat(Tv1.DataController.Summary.FooterSummaryTexts[3]),2));
|
||
end else
|
||
begin
|
||
FXSMoneyHJ:='0';
|
||
end;
|
||
if (StrToFloat(FXSMoneyHJ)<>0) and (StrToFloat(FXSQty)<>0) then
|
||
begin
|
||
XSPrice.Text:=FloatToStr(RoundFloat(StrToFloat(FXSMoneyHJ)/StrToFloat(FXSQty),2));
|
||
end else
|
||
begin
|
||
XSPrice.Text:='';
|
||
end;
|
||
//FXSPrice:=Trim(XSPrice.Text);if FXSPrice='' then FXSPrice:='0';
|
||
FHuiLv:=Trim(HuiLv.Text);if FHuiLv='' then FHuiLv:='0';
|
||
|
||
FHYFee:=Trim(HYFee.Text);if Trim(FHYFee)='' then FHYFee:='0';
|
||
FYongJin:=Trim(YongJin.Text);if Trim(FYongJin)='' then FYongJin:='0';
|
||
FSXFee:=Trim(SXFee.Text);if Trim(FSXFee)='' then FSXFee:='0';
|
||
|
||
if (Trim(PriceType.Text)='CIF') and (StrToFloat(FXSMoneyHJ)<>0) then
|
||
begin
|
||
if Trim(HYFeeUnit.Text)=Trim(BZType.Text) then
|
||
begin
|
||
FXSMoney:=FloatToStr(RoundFloat((StrToFloat(FXSMoneyHJ)-StrToFloat(FHYFee)),2));
|
||
end else
|
||
if (Trim(HYFeeUnit.Text)='<27><>') and ((Trim(BZType.Text)='<27><>') or (Trim(BZType.Text)='<27>')) and (StrToFloat(FHuiLv)<>0) then
|
||
begin
|
||
FXSMoney:=FloatToStr(RoundFloat((StrToFloat(FXSMoneyHJ)-(StrToFloat(FHYFee)*1.00/StrToFloat(FHuiLv))),2));
|
||
end else
|
||
if (Trim(HYFeeUnit.Text)='<27><>') and (Trim(BZType.Text)='<27><>') and (StrToFloat(FHuiLv)<>0) then
|
||
begin
|
||
FXSMoney:=FloatToStr(RoundFloat((StrToFloat(FXSMoneyHJ)-(StrToFloat(FHYFee)*1.00*StrToFloat(FHuiLv))),2));
|
||
end else
|
||
begin
|
||
FXSMoney:='0';
|
||
end;
|
||
end else
|
||
begin
|
||
FXSMoney:=FXSMoneyHJ;
|
||
end;
|
||
FXSMoney:=FloatToStr(RoundFloat(StrToFloat(FXSMoney)-StrToFloat(FYongJin)-StrToFloat(FSXFee),2));
|
||
// FXSMoney:=FXSMoneyHJ;
|
||
if Trim(BZType.Text)='<27><>' then FXSMoneyRMB:=FXSMoney else
|
||
if ((Trim(BZType.Text)='<27><>') or (Trim(BZType.Text)='<27>') ) and (StrToFloat(FHuiLv)<>0) then
|
||
begin
|
||
FXSMoneyRMB:=FloatToStr(RoundFloat(StrToFloat(FXSMoney)*StrToFloat(FHuiLv),2));
|
||
end else
|
||
begin
|
||
FXSMoneyRMB:='0';
|
||
end;
|
||
if StrToFloat(FXSMoney)<>0 then XSMoney.Text:=FXSMoney else XSMoney.Text:='';
|
||
if StrToFloat(FXSMoneyRMB)<>0 then XSMoneyRMB.Text:=FXSMoneyRMB else XSMoneyRMB.Text:='';
|
||
if StrToFloat(FXSMoneyRMB)<>0 then
|
||
begin
|
||
FLiRun:=FloatToStr(RoundFloat((StrToFloat(FXSMoneyRMB)+StrToFloat(FTuiShui)-StrToFloat(FShuiFee)-StrToFloat(FCPMoney)),2));
|
||
end else
|
||
begin
|
||
FLiRun:='0';
|
||
end;
|
||
if StrToFloat(FLiRun)<>0 then LiRun.Text:=FLiRun else LiRun.Text:='';
|
||
if (StrToFloat(FLiRun)<>0) and (StrToFloat(FXSMoneyRMB)<>0) then
|
||
begin
|
||
LiRunLv.Text:=FloatToStr(RoundFloat(StrToFloat(FLiRun)*100/StrToFloat(FXSMoneyRMB),2));
|
||
end else
|
||
begin
|
||
LiRunLv.Text:='';
|
||
end;
|
||
end;
|
||
procedure TfrmOrderHSInPutTS.Tv1DblClick(Sender: TObject);
|
||
begin
|
||
if CDS_Sub.IsEmpty then Exit;
|
||
if TBSave.Visible=False then Exit;
|
||
if Application.MessageBox('ȷ<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
|
||
if Trim(CDS_Sub.fieldbyname('HOID').AsString)<>'' then
|
||
begin
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('delete Order_HS_OrderNo where HOID='''+Trim(CDS_Sub.fieldbyname('HOID').AsString)+'''');
|
||
ExecSQL;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' exec P_Update_HSInfo_JD :HSID');
|
||
Parameters.ParamByName('HSID').Value:=Trim(CDS_Sub.fieldbyname('HSID').AsString);
|
||
ExecSQL;
|
||
end;
|
||
end;
|
||
CDS_Sub.Delete;
|
||
GetData();
|
||
if Trim(FCYID)<>'' then
|
||
begin
|
||
SaveData();
|
||
end;
|
||
|
||
end;
|
||
|
||
procedure TfrmOrderHSInPutTS.PBQtyChange(Sender: TObject);
|
||
begin
|
||
GetData();
|
||
end;
|
||
|
||
procedure TfrmOrderHSInPutTS.Tv1Column3PropertiesEditValueChanged(
|
||
Sender: TObject);
|
||
var
|
||
mvalue,FName:string;
|
||
begin
|
||
mvalue:=TcxTextEdit(Sender).EditingText;
|
||
FName:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName;
|
||
with CDS_Sub do
|
||
begin
|
||
Edit;
|
||
if Trim(mvalue)<>'' then
|
||
begin
|
||
FieldByName(FName).Value:=mvalue;
|
||
end else
|
||
begin
|
||
FieldByName(FName).Value:=Null;
|
||
end;
|
||
Post;
|
||
end;
|
||
GetData();
|
||
end;
|
||
|
||
procedure TfrmOrderHSInPutTS.FKTypeBtnUpClick(Sender: TObject);
|
||
begin
|
||
try
|
||
frmZDYHelp:=TfrmZDYHelp.Create(Application);
|
||
with frmZDYHelp do
|
||
begin
|
||
flag:='FKTypeOrd';
|
||
flagname:='<27><><EFBFBD>ʽ';
|
||
if ShowModal=1 then
|
||
begin
|
||
Self.FKType.Text:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
|
||
end;
|
||
end;
|
||
finally
|
||
frmZDYHelp.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmOrderHSInPutTS.FKTypeBtnDnClick(Sender: TObject);
|
||
begin
|
||
FKType.Text:='';
|
||
end;
|
||
|
||
procedure TfrmOrderHSInPutTS.cxButton1Click(Sender: TObject);
|
||
var
|
||
FName:string;
|
||
begin
|
||
if Trim(FCYID)='' then
|
||
begin
|
||
Application.MessageBox('û<>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>~','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
try
|
||
frmFjList:=TfrmFjList.Create(Application);
|
||
with frmFjList do
|
||
begin
|
||
fkeyNO:=Trim(FCYID);
|
||
fType:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
||
if ShowModal=1 then
|
||
begin
|
||
|
||
end;
|
||
end;
|
||
finally
|
||
frmFjList.Free;
|
||
end;
|
||
InitFJData();
|
||
end;
|
||
procedure TfrmOrderHSInPutTS.InitFJData();
|
||
var
|
||
ListItem: TListItem;
|
||
Flag: Cardinal;
|
||
info: SHFILEINFOA;
|
||
Icon: TIcon;
|
||
begin
|
||
ListView1.Items.Clear;
|
||
with ADOQueryTmp do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select fileName from FJ_File ');
|
||
sql.Add('where WBID='+quotedstr(trim(FCYID)));
|
||
sql.Add('and TFType='+quotedstr(trim('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>')));
|
||
open;
|
||
if not IsEmpty then
|
||
begin
|
||
while not eof do
|
||
begin
|
||
with ListView1 do
|
||
begin
|
||
LargeImages := ImageList1;
|
||
Icon := TIcon.Create;
|
||
ListItem := Items.Add;
|
||
Listitem.Caption := trim(fieldbyname('fileName').AsString);
|
||
Flag := (SHGFI_LARGEICON or SHGFI_ICON or SHGFI_USEFILEATTRIBUTES);
|
||
SHGetFileInfo(Pchar(trim(fieldbyname('fileName').AsString)), 0, info, Sizeof(info), Flag);
|
||
Icon.Handle := info.hIcon;
|
||
ImageList1.AddIcon(Icon);
|
||
ListItem.ImageIndex := ImageList1.Count - 1;
|
||
end;
|
||
next;
|
||
end;
|
||
end;
|
||
end;
|
||
|
||
end;
|
||
|
||
procedure TfrmOrderHSInPutTS.ListView1DblClick(Sender: TObject);
|
||
var
|
||
sFieldName:string;
|
||
fileName:string;
|
||
begin
|
||
if ListView1.Items.Count<1 THEN EXIT;
|
||
|
||
if listView1.SelCount<1 then exit;
|
||
sFieldName:=leftbstr(ExtractFilePath(Application.ExeName),1)+':\ͼƬ<CDBC>鿴';
|
||
|
||
if not DirectoryExists(pchar(sFieldName)) then
|
||
CreateDirectory(pchar(sFieldName),nil);
|
||
|
||
fileName:=ListView1.Selected.Caption;
|
||
|
||
sFieldName:=sFieldName+'\'+trim(fileName);
|
||
|
||
try
|
||
IdFTP1.Host := ReadINIFileStr('SYSTEMSET.INI','SERVER','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ','127.0.0.1');
|
||
IdFTP1.Username := 'three';
|
||
IdFTP1.Password := '641010';
|
||
IdFTP1.Connect();
|
||
except
|
||
;
|
||
end;
|
||
|
||
if IdFTP1.Connected then
|
||
begin
|
||
|
||
Panel2.Caption:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD>Ե<EFBFBD>...';
|
||
Panel2.Visible:=true;
|
||
application.ProcessMessages;
|
||
try
|
||
IdFTP1.Get('FJ\'+ Trim(fileName), sFieldName,true, false);
|
||
except
|
||
Panel2.Visible:=false;
|
||
Application.MessageBox('<27>ͻ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', MB_ICONWARNING);
|
||
IdFTP1.Quit;
|
||
Exit;
|
||
end;
|
||
end
|
||
else
|
||
begin
|
||
Panel2.Visible:=false;
|
||
Application.MessageBox('<27><EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', MB_ICONWARNING);
|
||
IdFTP1.Quit;
|
||
Exit;
|
||
end;
|
||
Panel2.Visible:=false;
|
||
if IdFTP1.Connected then IdFTP1.Quit;
|
||
ShellExecute(Handle, 'open',PChar(sFieldName),'', '', SW_SHOWNORMAL);
|
||
|
||
end;
|
||
|
||
procedure TfrmOrderHSInPutTS.Tv1Column6PropertiesEditValueChanged(
|
||
Sender: TObject);
|
||
var
|
||
FXSMoney,FXSQty,mvalue,FName:string;
|
||
begin
|
||
mvalue:=TcxTextEdit(Sender).EditingText;
|
||
FName:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName;
|
||
if Trim(CDS_Sub.fieldbyname('XSQty').AsString)<>'' then
|
||
begin
|
||
FXSQty:=Trim(CDS_Sub.fieldbyname('XSQty').AsString);
|
||
end else
|
||
begin
|
||
FXSQty:='0';
|
||
end;
|
||
with CDS_Sub do
|
||
begin
|
||
Edit;
|
||
if Trim(mvalue)<>'' then
|
||
begin
|
||
FieldByName(FName).Value:=mvalue;
|
||
FXSMoney:=mvalue;
|
||
if Trim(FXSQty)<>'0' then
|
||
begin
|
||
FieldByName('XSPrice').Value:=RoundFloat(StrToFloat(FXSMoney)/StrToFloat(FXSQty),2);
|
||
end else
|
||
begin
|
||
FieldByName('XSPrice').Value:=null;
|
||
end;
|
||
|
||
end else
|
||
begin
|
||
FieldByName(FName).Value:=Null;
|
||
FXSMoney:='0';
|
||
FieldByName('XSPrice').Value:=null;
|
||
end;
|
||
Post;
|
||
end;
|
||
GetData();
|
||
end;
|
||
|
||
procedure TfrmOrderHSInPutTS.Tv1Column7PropertiesEditValueChanged(
|
||
Sender: TObject);
|
||
var
|
||
mvalue,FName:string;
|
||
begin
|
||
mvalue:=TcxTextEdit(Sender).EditingText;
|
||
FName:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName;
|
||
with CDS_Sub do
|
||
begin
|
||
Edit;
|
||
if Trim(mvalue)<>'' then
|
||
begin
|
||
FieldByName(FName).Value:=mvalue;
|
||
end else
|
||
begin
|
||
FieldByName(FName).Value:=Null;
|
||
end;
|
||
Post;
|
||
end;
|
||
if Trim(mvalue)<>'' then
|
||
begin
|
||
BZType.Text:=mvalue;
|
||
end;
|
||
GetData();
|
||
end;
|
||
|
||
|
||
procedure TfrmOrderHSInPutTS.Tv1Column10PropertiesEditValueChanged(
|
||
Sender: TObject);
|
||
var
|
||
mvalue,FName:string;
|
||
begin
|
||
mvalue:=TcxTextEdit(Sender).EditingText;
|
||
FName:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName;
|
||
with CDS_Sub do
|
||
begin
|
||
Edit;
|
||
if Trim(mvalue)<>'' then
|
||
begin
|
||
FieldByName(FName).Value:=mvalue;
|
||
end else
|
||
begin
|
||
FieldByName(FName).Value:=Null;
|
||
end;
|
||
Post;
|
||
end;
|
||
if Trim(mvalue)<>'' then
|
||
begin
|
||
XSUnit.Text:=mvalue;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmOrderHSInPutTS.TuiShuiFlagClick(Sender: TObject);
|
||
begin
|
||
GetData();
|
||
end;
|
||
|
||
end.
|
||
|