|
|
unit u_op_seae_edi_hyundai;
|
|
|
|
|
|
interface
|
|
|
|
|
|
uses
|
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,IdFTP,IdFTPCommon,
|
|
|
Dialogs, BusinessSkinForm, StdCtrls, bsSkinCtrls,inifiles, DB, ADODB,
|
|
|
IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
|
|
|
IdExplicitTLSClientServerBase;
|
|
|
|
|
|
type
|
|
|
Tfrm_op_seae_edi_hyundai = class(TForm)
|
|
|
bsBusinessSkinForm1: TbsBusinessSkinForm;
|
|
|
Label2: TLabel;
|
|
|
Edit2: TEdit;
|
|
|
Edit1: TEdit;
|
|
|
Label1: TLabel;
|
|
|
SaveDialog1: TSaveDialog;
|
|
|
bsSkinButton1: TbsSkinButton;
|
|
|
bsSkinButton2: TbsSkinButton;
|
|
|
bsSkinButton3: TbsSkinButton;
|
|
|
t_op_ctn: TADOQuery;
|
|
|
t_op_ctn1: TDataSource;
|
|
|
bsSkinRadioGroup1: TbsSkinRadioGroup;
|
|
|
Label3: TLabel;
|
|
|
Edit3: TEdit;
|
|
|
bsSkinRadioGroup2: TbsSkinRadioGroup;
|
|
|
bsSkinButton4: TbsSkinButton;
|
|
|
bsSkinGroupBox1: TbsSkinGroupBox;
|
|
|
Label4: TLabel;
|
|
|
Label5: TLabel;
|
|
|
Label6: TLabel;
|
|
|
Label7: TLabel;
|
|
|
Edit4: TEdit;
|
|
|
Edit5: TEdit;
|
|
|
Edit6: TEdit;
|
|
|
Edit7: TEdit;
|
|
|
t_op_ams: TADOQuery;
|
|
|
t_op_ams1: TDataSource;
|
|
|
bsSkinCheckRadioBox2: TbsSkinCheckRadioBox;
|
|
|
t_op_seae_assistant: TADOQuery;
|
|
|
Label8: TLabel;
|
|
|
Edit8: TEdit;
|
|
|
Label9: TLabel;
|
|
|
Edit9: TEdit;
|
|
|
Label10: TLabel;
|
|
|
Edit10: TEdit;
|
|
|
Label11: TLabel;
|
|
|
Edit11: TEdit;
|
|
|
Label12: TLabel;
|
|
|
Edit12: TEdit;
|
|
|
t_op_edictn: TADOQuery;
|
|
|
Label13: TLabel;
|
|
|
Label14: TLabel;
|
|
|
Edit13: TEdit;
|
|
|
Edit14: TEdit;
|
|
|
Label15: TLabel;
|
|
|
Edit15: TEdit;
|
|
|
Label16: TLabel;
|
|
|
Edit16: TEdit;
|
|
|
Label17: TLabel;
|
|
|
Edit17: TEdit;
|
|
|
bsSkinButton5: TbsSkinButton;
|
|
|
bsSkinButton6: TbsSkinButton;
|
|
|
bsSkinGroupBox2: TbsSkinGroupBox;
|
|
|
Label18: TLabel;
|
|
|
Label19: TLabel;
|
|
|
Label20: TLabel;
|
|
|
Label21: TLabel;
|
|
|
Edit18: TEdit;
|
|
|
Edit19: TEdit;
|
|
|
Edit20: TEdit;
|
|
|
Edit21: TEdit;
|
|
|
bsSkinGroupBox3: TbsSkinGroupBox;
|
|
|
Label22: TLabel;
|
|
|
Label23: TLabel;
|
|
|
Label24: TLabel;
|
|
|
Label25: TLabel;
|
|
|
Edit22: TEdit;
|
|
|
Edit23: TEdit;
|
|
|
Edit24: TEdit;
|
|
|
Edit25: TEdit;
|
|
|
bsSkinButton8: TbsSkinButton;
|
|
|
Edit26: TEdit;
|
|
|
Label26: TLabel;
|
|
|
IdFTP1: TIdFTP;
|
|
|
CheckBox1: TCheckBox;
|
|
|
procedure bsSkinButton2Click(Sender: TObject);
|
|
|
procedure FormShow(Sender: TObject);
|
|
|
procedure bsSkinButton1Click(Sender: TObject);
|
|
|
procedure bsSkinButton3Click(Sender: TObject);
|
|
|
procedure bsSkinButton4Click(Sender: TObject);
|
|
|
procedure bsSkinButton5Click(Sender: TObject);
|
|
|
procedure bsSkinButton6Click(Sender: TObject);
|
|
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|
|
private
|
|
|
function isEditrue(DataSet:TDataSet): boolean;
|
|
|
function GetStrNum(str:String):integer;
|
|
|
function FormatListString(Old:TStrings;mCount,Strlength:integer):String;
|
|
|
function FormatEdiString(str:String;Strlength:integer=0):String;
|
|
|
function CreateEdiFile:TStrings;
|
|
|
function CreateZHUEdiFile:TStrings;
|
|
|
function CreateSIEdiFile:TStrings;
|
|
|
function CreateVgmEdiFile:TStrings;
|
|
|
function CreateSIZHUEdiFile:TStrings;
|
|
|
function GetCntrEdi(cntrsize: String):String;
|
|
|
function GetpkgsEdi(pkgs:String):String;
|
|
|
function GetlineEdi(aline:String):String;
|
|
|
function GetvesselEdi(avessel:String):String;
|
|
|
function GetLengthword(var s: String; l: Integer;str:String): String;
|
|
|
procedure GetLengthTString(var sl:TStringList;l:integer);
|
|
|
function IsZhongwen(Str:String):Boolean;
|
|
|
function GetCtnGoods(bsno:String):String;
|
|
|
|
|
|
|
|
|
|
|
|
{ Private declarations }
|
|
|
public
|
|
|
{ Public declarations }
|
|
|
MblLength:integer;
|
|
|
IntMarksRowCount:integer;
|
|
|
IntGoodsRowCount:integer;
|
|
|
end;
|
|
|
|
|
|
var
|
|
|
frm_op_seae_edi_hyundai: Tfrm_op_seae_edi_hyundai;
|
|
|
|
|
|
implementation
|
|
|
|
|
|
uses u_op_seae, u_main, my_sys_function, u_data_share, u_op_seae_assistant;
|
|
|
|
|
|
{$R *.dfm}
|
|
|
function Tfrm_op_seae_edi_hyundai.IsZhongwen(Str: String): Boolean;
|
|
|
var
|
|
|
i:Integer;
|
|
|
begin
|
|
|
Result:=false;
|
|
|
if Str='' then Exit;
|
|
|
for i:=1 to Length(Str) do begin
|
|
|
// if Str[i]>Chr(127) then begin
|
|
|
if bytetype(Str[i],1)<>mbsinglebyte then begin
|
|
|
Result:=True;
|
|
|
Exit;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.GetLengthword(var s: String; l: Integer;str:String): String;
|
|
|
var
|
|
|
i:Integer;
|
|
|
b:Boolean;
|
|
|
begin
|
|
|
s:='';
|
|
|
if Length(str)<=l then begin
|
|
|
result:=str;
|
|
|
end else begin
|
|
|
b:=true;
|
|
|
s:=Copy(str,l+1,Length(str)-l);
|
|
|
str:=Copy(str,1,l);
|
|
|
result:='';
|
|
|
for i:=Length(str) downto 1 do begin
|
|
|
if ( not (str[i] in [' ',';',',','.',':','/','(',')','?','+','-'])) and b then
|
|
|
s:=str[i]+s
|
|
|
else begin
|
|
|
b:=false;
|
|
|
result:=str[i]+Result;
|
|
|
end;
|
|
|
end;
|
|
|
s:=s+' ';
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seae_edi_hyundai.GetLengthTString(var sl: TStringList; l: integer);
|
|
|
var
|
|
|
i:integer;
|
|
|
str_head,S:String;
|
|
|
Stemp:TStrings;
|
|
|
begin
|
|
|
Stemp:=TStringList.Create;
|
|
|
try
|
|
|
str_head:='';
|
|
|
S:='';
|
|
|
for i:=0 to sl.Count-1 do begin
|
|
|
if sl[i]<>'' then
|
|
|
stemp.add(GetLengthword(str_head,l,s+sl[i]));
|
|
|
S:=Str_head;
|
|
|
end;
|
|
|
while S<>'' do begin
|
|
|
stemp.add(GetLengthword(str_head,l,s));
|
|
|
S:=Str_head;
|
|
|
end;
|
|
|
SL.Assign(Stemp);
|
|
|
finally
|
|
|
FreeAndNil(Stemp);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.FormatEdiString(str:String;Strlength:integer=0):String;
|
|
|
var
|
|
|
i:integer;
|
|
|
strC:widestring;
|
|
|
begin
|
|
|
strC:='';
|
|
|
for i:=1 to length(str) do
|
|
|
begin
|
|
|
if ((str[i]=#39) or (str[i]=':') or (str[i]='+') or (str[i]='?') or (str[i]=';')) then
|
|
|
begin
|
|
|
strC:=strC+'?'+str[i];
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
strC:=strC+str[i];
|
|
|
end;
|
|
|
end;
|
|
|
result:=strC;
|
|
|
end;
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.FormatListString(Old:TStrings;mCount,Strlength:integer):String;
|
|
|
var
|
|
|
i:integer;
|
|
|
NewStrs:TStrings;
|
|
|
mStr:String;
|
|
|
begin
|
|
|
Result:='';
|
|
|
NewStrs:=TStringList.Create;
|
|
|
for i:=0 to old.Count-1 do begin
|
|
|
if Length(old.Strings[i])<=Strlength then begin
|
|
|
NewStrs.Add(old.Strings[i]);
|
|
|
end else begin
|
|
|
mStr:=old.Strings[i];
|
|
|
while length(mStr)>Strlength do begin
|
|
|
newStrs.Add(copy(mStr,1,Strlength));
|
|
|
system.Delete(mStr,1,Strlength);
|
|
|
end;
|
|
|
newStrs.Add(mStr);
|
|
|
end;
|
|
|
end;
|
|
|
try
|
|
|
for i:=0 to mCount-1 do begin
|
|
|
if i<NewStrs.Count then begin
|
|
|
Result:=Result+NewStrs.Strings[i];
|
|
|
end;
|
|
|
if i<mCount-1 then
|
|
|
Result:=Result+':';
|
|
|
end;
|
|
|
finally
|
|
|
FreeAndNil(NewStrs);
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.GetStrNum(str:String):integer;
|
|
|
var
|
|
|
i:integer;
|
|
|
begin
|
|
|
result:=0;
|
|
|
if str='' then exit;
|
|
|
for i:=1 to length(Str) do begin
|
|
|
if str[i] in ['0','1','2','3','4','5','6','7','8','9'] then
|
|
|
result:=result+1;
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seae_edi_hyundai.bsSkinButton2Click(Sender: TObject);
|
|
|
begin
|
|
|
close;
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seae_edi_hyundai.FormShow(Sender: TObject);
|
|
|
var
|
|
|
inifile1:Tinifile;
|
|
|
tmpstr:string;
|
|
|
begin
|
|
|
inifile1:=Tinifile.Create(ExtractFilePath(application.ExeName)+'main.ini');
|
|
|
edit1.text:=inifile1.ReadString('EDI','HYUNDAISEND','');
|
|
|
edit2.text:=inifile1.ReadString('EDI','HYUNDAIRECIEVE','');
|
|
|
edit3.text:=inifile1.ReadString('EDI','HYUNDAISENDNAME','');
|
|
|
edit4.text:=inifile1.ReadString('EDI','HYUNDAIFTPSERVER','');
|
|
|
edit5.text:=inifile1.ReadString('EDI','HYUNDAIFTPPATH','/');
|
|
|
edit6.text:=inifile1.ReadString('EDI','HYUNDAIFTPNAME','');
|
|
|
edit7.text:=inifile1.ReadString('EDI','HYUNDAIFTPPASS','');
|
|
|
edit8.text:=inifile1.ReadString('EDI','HYUNDAISENDDEPT','');
|
|
|
edit9.text:=inifile1.ReadString('EDI','HYUNDAISENDATTN','');
|
|
|
edit10.text:=inifile1.ReadString('EDI','HYUNDAISENDTEL','');
|
|
|
edit11.text:=inifile1.ReadString('EDI','HYUNDAISENDFAX','');
|
|
|
edit12.text:=inifile1.ReadString('EDI','HYUNDAISENDEMAIL','');
|
|
|
edit13.text:=inifile1.ReadString('EDI','HYUNDAIESINAME','');
|
|
|
edit14.text:=inifile1.ReadString('EDI','HYUNDAIESIPASS','');
|
|
|
|
|
|
|
|
|
edit18.text:=inifile1.ReadString('EDI','HYUNDAIVGMFTPSERVER','');
|
|
|
edit19.text:=inifile1.ReadString('EDI','HYUNDAIVGMFTPPATH','');
|
|
|
edit20.text:=inifile1.ReadString('EDI','HYUNDAIVGMFTPUSERNAME','');
|
|
|
edit26.text:=inifile1.ReadString('EDI','HYUNDAIVGMFTPPORT','');
|
|
|
edit21.text:=inifile1.ReadString('EDI','HYUNDAIVGMFTPPASSWORD','');
|
|
|
|
|
|
edit22.text:=inifile1.ReadString('EDI','JHCZFTPSERVER','');
|
|
|
edit23.text:=inifile1.ReadString('EDI','JHCZFTPPATH','');
|
|
|
edit24.text:=inifile1.ReadString('EDI','JHCZFTPNAME','');
|
|
|
edit25.text:=inifile1.ReadString('EDI','JHCZFTPPASS','');
|
|
|
tmpstr:=inifile1.ReadString('EDI','SEND_FTPPASSIVE_HYUNDAI','1');
|
|
|
if (tmpstr='1') then CheckBox1.checked else CheckBox1.checked:=False;
|
|
|
inifile1.free;
|
|
|
|
|
|
t_op_ams.close;
|
|
|
t_op_ams.Parameters.ParamByName('<27><><EFBFBD><EFBFBD>').Value:=frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring;
|
|
|
t_op_ams.open;
|
|
|
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seae_edi_hyundai.bsSkinButton1Click(Sender: TObject);
|
|
|
var
|
|
|
Str:TStrings;
|
|
|
inifile1:Tinifile;
|
|
|
i:integer;
|
|
|
begin
|
|
|
inifile1:=Tinifile.Create(ExtractFilePath(application.ExeName)+'main.ini');
|
|
|
inifile1.WriteString('EDI','HYUNDAISEND',edit1.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIRECIEVE',edit2.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDNAME',edit3.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIFTPSERVER',edit4.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIFTPPATH',edit5.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIFTPNAME',edit6.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIFTPPASS',edit7.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDDEPT',edit8.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDATTN',edit9.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDTEL',edit10.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDFAX',edit11.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDEMAIL',edit12.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIESINAME',edit13.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIESIPASS',edit14.text);
|
|
|
|
|
|
inifile1.WriteString('EDI','JHCZFTPSERVER',edit22.text);
|
|
|
inifile1.WriteString('EDI','JHCZFTPPATH',edit23.text);
|
|
|
inifile1.WriteString('EDI','JHCZFTPNAME',edit24.text);
|
|
|
inifile1.WriteString('EDI','JHCZFTPPASS',edit25.text);
|
|
|
if CheckBox1.checked then
|
|
|
inifile1.WriteString('EDI','SEND_FTPPASSIVE_HYUNDAI','1');
|
|
|
|
|
|
inifile1.free;
|
|
|
|
|
|
if not isEditrue(frm_op_seae.t_op_seae) then exit;
|
|
|
|
|
|
if Trim(Edit15.Text)<>'' then
|
|
|
IntMarksRowCount:=StrToInt(Trim(Edit15.Text))
|
|
|
else IntMarksRowCount:=9;
|
|
|
|
|
|
if Trim(Edit16.Text)<>'' then
|
|
|
IntGoodsRowCount:=StrToInt(Trim(Edit16.Text))
|
|
|
else IntGoodsRowCount:=5;
|
|
|
|
|
|
if Trim(Edit17.Text)<>'' then
|
|
|
MblLength:=StrToInt(Trim(Edit17.Text))
|
|
|
else MblLength:=2;
|
|
|
|
|
|
str:=Tstringlist.Create;
|
|
|
try
|
|
|
if Trim(frm_op_seae.t_op_seae.fieldbyname('װ<>˷<EFBFBD>ʽ').asstring)='<27><><EFBFBD><EFBFBD>' then
|
|
|
if bsSkinRadioGroup2.ItemIndex=1 then
|
|
|
Str:=CreateSIEdiFile
|
|
|
else
|
|
|
Str:=CreateEdiFile
|
|
|
else if Pos('<27><>Ʊ',(frm_op_seae.t_op_seae.fieldbyname('װ<>˷<EFBFBD>ʽ').asstring))>0 then
|
|
|
if bsSkinRadioGroup2.ItemIndex=1 then
|
|
|
Str:=CreateSIZHUEdiFile
|
|
|
else
|
|
|
Str:=CreateZHUEdiFile
|
|
|
else begin
|
|
|
Exit;
|
|
|
end;
|
|
|
|
|
|
for i:=0 to Str.Count-1 do begin
|
|
|
if IsZhongwen(Str[i]) then begin
|
|
|
if MessageDlg('<27><>Ʊҵ<C6B1><D2B5><EFBFBD><EFBFBD><EFBFBD>ܺ<EFBFBD><DCBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>淶<EFBFBD>ַ<EFBFBD>,ȷʵҪ<CAB5><D2AA><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>',mtWarning,[mbYes,mbNo],0)=mrNo then
|
|
|
exit;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
|
|
|
SaveDialog1.FileName:=frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring;
|
|
|
if SaveDialog1.Execute then
|
|
|
begin
|
|
|
str.SaveToFile(SaveDialog1.FileName+'.txt');
|
|
|
showmessage('<27>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>ɳɹ<C9B3><C9B9><EFBFBD>');
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
showmessage('<27>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>');
|
|
|
exit;
|
|
|
end;
|
|
|
finally
|
|
|
FreeAndNil(Str)
|
|
|
end;
|
|
|
|
|
|
|
|
|
close;
|
|
|
end;
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.isEditrue(DataSet:TDataSet): boolean;
|
|
|
var
|
|
|
cntrs:String;
|
|
|
begin
|
|
|
result:=true;
|
|
|
|
|
|
if trim(DataSet.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27>ᵥ<EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if trim(DataSet.fieldbyname('<27><><EFBFBD>ѷ<EFBFBD>ʽ').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD>ѷ<EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if trim(DataSet.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if trim(DataSet.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD>β<EFBFBD><CEB2><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
|
|
|
if trim(DataSet.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)<>'' then begin
|
|
|
if (GetvesselEdi(trim(DataSet.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)))='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
if trim(DataSet.fieldbyname('װ<>۴<EFBFBD><DBB4><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('װ<>۴<EFBFBD><DBB4>벻<EFBFBD><EBB2BB>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
|
|
|
if trim(DataSet.fieldbyname('װ<><D7B0><EFBFBD><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('װ<><D7B0><EFBFBD>۲<EFBFBD><DBB2><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
{
|
|
|
if trim(DataSet.fieldbyname('<27>ܼ<EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װƤ<D7B0>ز<EFBFBD><D8B2><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
}
|
|
|
if trim(DataSet.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
|
|
|
if trim(DataSet.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>벻<EFBFBD><EBB2BB>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if trim(DataSet.fieldbyname('ж<><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('ж<><D0B6><EFBFBD><EFBFBD><EFBFBD>벻<EFBFBD><EBB2BB>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
|
|
|
if trim(DataSet.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD>ص㲻<D8B5><E3B2BB>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
|
|
|
if trim(DataSet.fieldbyname('Ŀ<>ĵ<EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('Ŀ<>ĵز<C4B5><D8B2><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
{
|
|
|
if trim(frm_op_seae.t_op_seae.fieldbyname('<27>˷<EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27>˷<EFBFBD>Э<EFBFBD><D0AD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
|
|
|
if trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>˱<EFBFBD><CBB1><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
}
|
|
|
|
|
|
{
|
|
|
if bsSkinRadioGroup2.ItemIndex=1 then begin
|
|
|
if trim(t_op_ams.fieldbyname('SI<53><49>ע').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('SI<53><49>ע<EFBFBD><D7A2><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
end else begin
|
|
|
if trim(frm_op_seae.t_op_seae.fieldbyname('EDI<44><49>ע').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('EDI<44><49>ע<EFBFBD><D7A2><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
end;
|
|
|
}
|
|
|
|
|
|
if trim(DataSet.fieldbyname('ǩ<><C7A9><EFBFBD>ص<EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('ǩ<><C7A9><EFBFBD>ص㲻<D8B5><E3B2BB>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
|
|
|
|
|
|
if trim(GetpkgsEdi(DataSet.fieldbyname('<27><>װ').asstring))='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><>װEDI<44><49><EFBFBD>벻<EFBFBD><EBB2BB><EFBFBD><EFBFBD>!',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if trim(DataSet.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if trim(DataSet.fieldbyname('<27><>ͷ').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
|
|
|
if DataSet.fieldbyname('<27><><EFBFBD><EFBFBD>').asinteger=0 then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if DataSet.fieldbyname('<27><><EFBFBD><EFBFBD>').asFloat=0 then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
|
|
|
if DataSet.fieldbyname('<27><><EFBFBD><EFBFBD>').asFloat=0 then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27>ܳ<EFBFBD><DCB3>벻<EFBFBD><EBB2BB>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
|
|
|
if trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
|
|
|
if trim(frm_op_seae.t_op_seae.FieldByName('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)='D' then begin
|
|
|
if Trim(frm_op_seae.t_op_seae.fieldbyname('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('Σ<><CEA3>Ʒ<EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if Trim(frm_op_seae.t_op_seae.fieldbyname('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if GetStrNum(Trim(frm_op_seae.t_op_seae.fieldbyname('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>').asstring))<>4 then begin
|
|
|
result:=false;
|
|
|
MessageDlg('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD>ű<EFBFBD><C5B1><EFBFBD><EFBFBD><EFBFBD>4λ<34><CEBB><EFBFBD><EFBFBD>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
if trim(frm_op_seae.t_op_seae.FieldByName('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)='R' then begin
|
|
|
|
|
|
if Trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD>¶Ȳ<C2B6><C8B2><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if Trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
{
|
|
|
if Trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD>¶Ȳ<C2B6><C8B2><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if Trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD>¶Ȳ<C2B6><C8B2><EFBFBD>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
}
|
|
|
|
|
|
end;
|
|
|
|
|
|
cntrGoods:=GetCtnGoods(frm_op_seae.t_op_seae.fieldByName('<27><><EFBFBD><EFBFBD>').asString);
|
|
|
if trim(cntrGoods)<>'' then
|
|
|
begin
|
|
|
result:=false;
|
|
|
MessageDlg(cntrGoods,mtWarning,[mbOk],0);
|
|
|
// exit;
|
|
|
end;
|
|
|
|
|
|
if bsSkinRadioGroup2.ItemIndex=1 then begin
|
|
|
t_op_ctn.close;
|
|
|
t_op_ctn.Parameters.ParamByName('<27><><EFBFBD><EFBFBD>').Value:=frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring;
|
|
|
t_op_ctn.open;
|
|
|
if t_op_ctn.IsEmpty then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><>װ<EFBFBD>䲻<EFBFBD><E4B2BB>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
t_op_ctn.First;
|
|
|
while not t_op_ctn.Eof do begin
|
|
|
if Trim(t_op_ctn.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if Trim(t_op_ctn.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)='' then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
t_op_ctn.Next;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
if iszhongwen(frm_op_seae.t_op_seae.fieldbyname('EDI<44><49>ע').AsString) then begin
|
|
|
result:=false;
|
|
|
MessageDlg('EDI<44><49>ע<EFBFBD><D7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
|
|
|
if iszhongwen(dataset.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD><CBB4><EFBFBD>').AsString) then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if iszhongwen(dataset.fieldbyname('<27>ջ<EFBFBD><D5BB>˴<EFBFBD><CBB4><EFBFBD>').AsString) then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27>ջ<EFBFBD><D5BB>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if iszhongwen(dataset.fieldbyname('֪ͨ<CDA8>˴<EFBFBD><CBB4><EFBFBD>').AsString) then begin
|
|
|
result:=false;
|
|
|
MessageDlg('֪ͨ<CDA8>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if iszhongwen(t_op_ams.fieldbyname('AMS<4D><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsString) then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27>ڶ<EFBFBD>֪ͨ<CDA8>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if iszhongwen(dataset.fieldbyname('<27><>ͷ').AsString) then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if iszhongwen(dataset.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsString) then begin
|
|
|
result:=false;
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.CreateEdiFile:TStrings;
|
|
|
var
|
|
|
str,sl,sl1:Tstringlist;
|
|
|
i,j,Count,l,M:integer;
|
|
|
strsql,strRmain,strtemp,S,strSoc:string;
|
|
|
rs:Tadoquery;
|
|
|
wide_str:widestring;
|
|
|
k:integer;
|
|
|
strType:string;
|
|
|
strDatetime:string;
|
|
|
SenderCode,ReciverCode:string;
|
|
|
|
|
|
function GetRemarksString:String;
|
|
|
var
|
|
|
TempStr:TStringList;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
TempStr.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('EDI<44><49>ע').AsString);
|
|
|
GetLengthTString(TempStr,35);
|
|
|
Result:='17:';
|
|
|
Result:=Result+FormatListString(TempStr,5,35)+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
|
|
|
function GetShipperString:String;
|
|
|
var
|
|
|
TempStr:TStringList;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
TempStr.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD><CBB4><EFBFBD>').AsString);
|
|
|
GetLengthTString(TempStr,35);
|
|
|
Result:='20:';
|
|
|
Result:=Result+':';
|
|
|
Result:=Result+FormatListString(TempStr,6,35)+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
function GetConsigneString:String;
|
|
|
var
|
|
|
TempStr:TStringList;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
TempStr.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('<27>ջ<EFBFBD><D5BB>˴<EFBFBD><CBB4><EFBFBD>').AsString);
|
|
|
GetLengthTString(TempStr,35);
|
|
|
Result:='21:';
|
|
|
Result:=Result+':';
|
|
|
Result:=Result+FormatListString(TempStr,6,35)+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
function GetNOTIFYString:String;
|
|
|
var
|
|
|
TempStr:TStringList;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
TempStr.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('֪ͨ<CDA8>˴<EFBFBD><CBB4><EFBFBD>').AsString);
|
|
|
GetLengthTString(TempStr,35);
|
|
|
Result:='22:';
|
|
|
Result:=Result+':';
|
|
|
Result:=Result+FormatListString(TempStr,6,35)+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
function GetAMSSHIPPERString:String;
|
|
|
var
|
|
|
TempStr:TStringList;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
TempStr.Text:=FormatEdiString(t_op_ams.fieldbyname('AMS<4D><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsString);
|
|
|
GetLengthTString(TempStr,35);
|
|
|
Result:='23:';
|
|
|
Result:=Result+':';
|
|
|
Result:=Result+FormatListString(TempStr,6,35)+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
|
|
|
function GetMARKSString:String;
|
|
|
var
|
|
|
TempStr:TStringList;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
TempStr.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('<27><>ͷ').AsString);
|
|
|
GetLengthTString(TempStr,15);
|
|
|
Result:='44:';
|
|
|
Result:=Result+FormatListString(TempStr,10,15)+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
{
|
|
|
function GetCARGODESCRIPTIONString:String;
|
|
|
var
|
|
|
TempStr:TStrings;
|
|
|
i:integer;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
TempStr.Text:=frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsString;
|
|
|
for i:=0 to TempStr.Count-1 do begin
|
|
|
if i=0 then
|
|
|
Result:='47:'+FormatEdiString(TempStr.Strings[i],70)
|
|
|
else
|
|
|
Result:=Result+':'+FormatEdiString(TempStr.Strings[i],70);
|
|
|
end;
|
|
|
Result:=Result+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
}
|
|
|
|
|
|
|
|
|
begin
|
|
|
if not isEditrue(frm_op_seae.t_op_seae) then exit;
|
|
|
SenderCode:=trim(edit1.Text) ;
|
|
|
ReciverCode:=trim(edit2.Text) ;
|
|
|
if bsSkinRadioGroup1.ItemIndex=0 then
|
|
|
strType:='9'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=1 then
|
|
|
strType:='2'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=2 then
|
|
|
strType:='3'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=3 then
|
|
|
strType:='4'
|
|
|
else strType:='9';
|
|
|
|
|
|
str:=Tstringlist.Create;
|
|
|
sl:=Tstringlist.Create;
|
|
|
sl1:=Tstringlist.Create;
|
|
|
|
|
|
str.Clear;
|
|
|
str.Add('00:IFTMBF:BOOKING:'+trim(strType)+':'+ SenderCode+':'+ReciverCode+':'+GetDatetime(datetimetostr(now),1)+#39);
|
|
|
Count:=0;
|
|
|
str.Add ('02:'+ trim(frm_op_seae.t_op_seae.fieldbyname('ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring) +':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+ trim(t_op_ams.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>').asstring) +':'
|
|
|
+ 'HMM:'
|
|
|
+ ':::::::'
|
|
|
+ '::'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27>˷<EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+':'+ #39);
|
|
|
|
|
|
|
|
|
IF (trim(frm_op_seae.t_op_seae.fieldbyname('ǩ<><C7A9><EFBFBD><EFBFBD>ʽ').asstring)<>'<27><><EFBFBD><EFBFBD>') and (trim(frm_op_seae.t_op_seae.fieldbyname('ǩ<><C7A9><EFBFBD><EFBFBD>ʽ').asstring)<>'<27><><EFBFBD><EFBFBD><EFBFBD>ᵥ') then //<2F>ᵥ<EFBFBD><E1B5A5><EFBFBD><EFBFBD>
|
|
|
strtemp:='EXP'
|
|
|
else
|
|
|
strtemp:='ORI';
|
|
|
|
|
|
|
|
|
str.add('03:'+strtemp+':'
|
|
|
+':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('ǩ<><C7A9><EFBFBD>ص<EFBFBD>').asstring) +':'
|
|
|
+ GetDatetime(trim(frm_op_seae.t_op_seae.fieldbyname('ǩ<><C7A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring),0)+':'
|
|
|
+ get_fenshu(trim(frm_op_seae.t_op_seae.fieldbyname('<27>ᵥ<EFBFBD><E1B5A5><EFBFBD><EFBFBD>').asstring),MblLength)+':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('װ<>۴<EFBFBD><DBB4><EFBFBD>').asstring) +':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('Ԥ<><D4A4><EFBFBD>ص<EFBFBD>').asstring)+':'
|
|
|
+ trim(t_op_ams.fieldbyname('<27><><EFBFBD><EFBFBD>AMS<4D><53>־').asstring) +':'
|
|
|
+ trim(t_op_ams.fieldbyname('<27><><EFBFBD>ô<EFBFBD>AMS<4D><53>־').asstring)
|
|
|
+#39);
|
|
|
str.Add('11:'
|
|
|
+ trim(GetvesselEdi(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))+':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+'::'
|
|
|
+ ReciverCode +':'
|
|
|
+ '::::::' +#39); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӫ<EFBFBD><D3AA>
|
|
|
str.Add ('12:'+trim(frm_op_seae.t_op_seae.fieldbyname('װ<>۴<EFBFBD><DBB4><EFBFBD>').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('װ<><D7B0><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('װ<>۴<EFBFBD><DBB4><EFBFBD>').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('װ<><D7B0><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('ж<><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('ж<><D0B6><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('Ŀ<>ĵش<C4B5><D8B4><EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('Ŀ<>ĵ<EFBFBD>').asstring) +#39);
|
|
|
|
|
|
if frm_data_share.t_code_free.locate('<27><><EFBFBD>ѷ<EFBFBD>ʽ',frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ѷ<EFBFBD>ʽ').asstring,[]) then
|
|
|
begin
|
|
|
str.Add ('14:'+frm_data_share.t_code_free.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ѷ<EFBFBD>ʽ').asstring)+#39);
|
|
|
|
|
|
str.Add('15:'
|
|
|
+'::'
|
|
|
+trim(frm_data_share.t_code_free.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+'::'
|
|
|
+ '::::' +#39); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӫ<EFBFBD><D3AA>
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
str.Add ('14:'+'P'+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ѷ<EFBFBD>ʽ').asstring)+#39);
|
|
|
str.Add('15:'
|
|
|
+'::'
|
|
|
+'P:'
|
|
|
+'::'
|
|
|
+ '::::' +#39); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӫ<EFBFBD><D3AA>
|
|
|
end;
|
|
|
|
|
|
Str.Add(GetRemarksString);
|
|
|
Str.Add(GetShipperString);
|
|
|
Str.Add(GetConsigneString);
|
|
|
Str.Add(GetNOTIFYString);
|
|
|
if (t_op_ams.fieldbyname('AMS<4D><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsString<>'') then
|
|
|
Str.Add(GetAMSSHIPPERString);
|
|
|
{
|
|
|
str.Add ('20:'+':'
|
|
|
+Changestr(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD><CBB4><EFBFBD>').asstring) +#39);
|
|
|
|
|
|
|
|
|
str.Add ('21:'+':'
|
|
|
+Changestr(frm_op_seae.t_op_seae.fieldbyname('<27>ջ<EFBFBD><D5BB>˴<EFBFBD><CBB4><EFBFBD>').asstring) +#39);
|
|
|
str.Add ('22:'+':'
|
|
|
+Changestr(frm_op_seae.t_op_seae.fieldbyname('֪ͨ<CDA8>˴<EFBFBD><CBB4><EFBFBD>').asstring) +#39);
|
|
|
}
|
|
|
str.Add ('41:1:'+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>䷽ʽ').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)+':' // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ S/R/D/O
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(GetpkgsEdi(frm_op_seae.t_op_seae.fieldbyname('<27><>װ').asstring))+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><>װ').asstring) +':' //<2F><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ˵<D7B0><CBB5>
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27>ܼ<EFBFBD>').asstring) +':' //<2F><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ˵<D7B0><CBB5>
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +'::::::' // <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װƤ<D7B0><C6A4>
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':::' // <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ<EFBFBD><D7B0><EFBFBD><EFBFBD>
|
|
|
+#39);
|
|
|
IF trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)='R' THEN
|
|
|
BEGIN
|
|
|
str.Add ('43:' // Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD>䶳
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+'::'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+'C:'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring) +':'
|
|
|
+'::::'
|
|
|
+#39);
|
|
|
END;
|
|
|
IF trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)='D'THEN
|
|
|
BEGIN
|
|
|
str.Add ('43:' // Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD>䶳
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+'::'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':::::'
|
|
|
+#39);
|
|
|
END;
|
|
|
|
|
|
Str.Add(GetMARKSString);
|
|
|
|
|
|
sl1.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsString);
|
|
|
GetLengthTString(sl1,47);
|
|
|
sl.text:='';
|
|
|
for L:=0 to sl1.Count-1 do begin
|
|
|
if Trim(sl1.Strings[L])<>'' then
|
|
|
sl.Add(sl1.Strings[L]);
|
|
|
end;
|
|
|
|
|
|
M:=1;
|
|
|
for L:=0 to sl.Count-1 do begin
|
|
|
if M<=5 then begin
|
|
|
if M=1 then begin
|
|
|
s:='47:'+sl.Strings[L]+':';
|
|
|
end else begin
|
|
|
if M=5 then
|
|
|
s:=s+sl.Strings[L]
|
|
|
else
|
|
|
s:=s+sl.Strings[L]+':';
|
|
|
end;
|
|
|
end else begin
|
|
|
S:=S+'''';
|
|
|
Str.Add(S);
|
|
|
M:=1;
|
|
|
s:='47:'+sl.Strings[L]+':';
|
|
|
end;
|
|
|
M:=M+1;
|
|
|
end;
|
|
|
S:=S+'''';
|
|
|
Str.Add(S);
|
|
|
|
|
|
// Str.Add(GetCARGODESCRIPTIONString);
|
|
|
|
|
|
Count:=Count+11;
|
|
|
strRmain:='';
|
|
|
|
|
|
if (frm_op_seae.t_op_seae.fieldbyname('<27>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsBoolean) then
|
|
|
strSoc:='Y'
|
|
|
else strSoc:='N';
|
|
|
|
|
|
if trim(frm_op_seae.t_op_seae.fieldbyname('װ<>˷<EFBFBD>ʽ').asstring)='<27><><EFBFBD><EFBFBD>' then
|
|
|
begin
|
|
|
if frm_data_share.t_crm_client_changzhan.locate('<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>',frm_op_seae.t_op_seae.fieldbyname('<27><>վ').asstring,[])then
|
|
|
begin
|
|
|
strRmain:=strRmain+'F:'+':'+':'+frm_data_share.t_crm_client_changzhan.fieldbyname('EDI<44><49><EFBFBD><EFBFBD>').asstring+':'+':'+strSoc+#39;
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
strRmain:=strRmain+'F:'+':'+':'+':'+':'+strSoc+#39;
|
|
|
end;
|
|
|
strsql:='select <20><><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>,sum(<28><><EFBFBD><EFBFBD>) as <20><><EFBFBD><EFBFBD> from t_op_ctn group by <20><><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD> having <20><><EFBFBD><EFBFBD>='
|
|
|
+#39+frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring+#39;
|
|
|
try
|
|
|
rs:=Tadoquery.Create(application);
|
|
|
rs.Connection := frm_main.db;
|
|
|
rs.sql.clear;
|
|
|
rs.sql.add(strsql);
|
|
|
rs.Open;
|
|
|
rs.First;
|
|
|
while not rs.Eof do
|
|
|
begin
|
|
|
str.Add ('48:'+Trim(GetCntrEdi(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))+':'+
|
|
|
trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+
|
|
|
strRmain);
|
|
|
Count:=Count+1;
|
|
|
rs.Next;
|
|
|
end;
|
|
|
{
|
|
|
strsql:='select * from t_op_ctn where <20><><EFBFBD><EFBFBD>='
|
|
|
+#39+frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring+#39;
|
|
|
rs.Close;
|
|
|
rs.sql.clear;
|
|
|
rs.sql.add(strsql);
|
|
|
rs.Open;
|
|
|
if not rs.IsEmpty then begin
|
|
|
if rs.FieldByName('<27><><EFBFBD><EFBFBD>').AsInteger>0 then begin
|
|
|
rs.First;
|
|
|
while not rs.Eof do begin
|
|
|
str.Add ('51:'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+Trim(GetCntrEdi(rs.fieldbyname('<27>ߴ<EFBFBD>').asstring,rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))+':'+
|
|
|
trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+trim(IntToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsInteger))+':'+trim(FloatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsFloat))+':'+''''
|
|
|
);
|
|
|
rs.Next;
|
|
|
end;
|
|
|
end;
|
|
|
end;
|
|
|
}
|
|
|
rs.Close;
|
|
|
rs.Destroy;
|
|
|
except
|
|
|
on e:exception do
|
|
|
begin
|
|
|
rs.Close;
|
|
|
rs.Destroy;
|
|
|
exit;
|
|
|
end;
|
|
|
end;
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
if frm_data_share.t_crm_client_changzhan.locate('<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>',frm_op_seae.t_op_seae.fieldbyname('<27><>վ').asstring,[])then
|
|
|
begin
|
|
|
strRmain:=strRmain+'L:'+':'+':'+frm_data_share.t_crm_client_changzhan.fieldbyname('EDI<44><49><EFBFBD><EFBFBD>').asstring+':'+':'+strSoc+#39;
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
strRmain:=strRmain+'L:'+':'+':'+':'+':'+strSoc+#39;
|
|
|
end;
|
|
|
str.Add('48:'+':'+':'+strRmain);
|
|
|
Count:=Count+1;
|
|
|
end;
|
|
|
|
|
|
str.Add('90:'
|
|
|
+ trim(Edit1.text)+':'
|
|
|
+ trim(edit3.text) +':'
|
|
|
+ trim(edit8.text)+':'
|
|
|
+ trim(edit9.text)+':'
|
|
|
+ trim(edit10.text)+':'
|
|
|
+ trim(edit11.text)+':'
|
|
|
+ trim(edit12.text)
|
|
|
+#39);
|
|
|
|
|
|
|
|
|
I:=str.Count;
|
|
|
str.Add('99:'+intToStr(i+1)+'''');
|
|
|
Result:=str;
|
|
|
end;
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.CreateZHUEdiFile:TStrings;
|
|
|
var
|
|
|
str,sl,sl1:Tstringlist;
|
|
|
i,j,Count,l,M:integer;
|
|
|
first:Boolean;
|
|
|
strsql,strRmain,strtemp,strhead,strSoc:string;
|
|
|
rs,aQuery:Tadoquery;
|
|
|
wide_str:widestring;
|
|
|
k:integer;
|
|
|
strType,s:string;
|
|
|
strDatetime:string;
|
|
|
SenderCode,ReciverCode:string;
|
|
|
|
|
|
function GetRemarksString:String;
|
|
|
var
|
|
|
TempStr:TStringList;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
TempStr.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('EDI<44><49>ע').AsString);
|
|
|
GetLengthTString(TempStr,70);
|
|
|
Result:='17:';
|
|
|
Result:=Result+FormatListString(TempStr,5,70)+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
function GetShipperString:String;
|
|
|
var
|
|
|
TempStr:TStringList;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
TempStr.Text:=FormatEdiString(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD><CBB4><EFBFBD>').AsString);
|
|
|
GetLengthTString(TempStr,35);
|
|
|
Result:='20:';
|
|
|
Result:=Result+':';
|
|
|
Result:=Result+FormatListString(TempStr,6,35)+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
function GetConsigneString:String;
|
|
|
var
|
|
|
TempStr:TStringList;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
TempStr.Text:=FormatEdiString(aQuery.fieldbyname('<27>ջ<EFBFBD><D5BB>˴<EFBFBD><CBB4><EFBFBD>').AsString);
|
|
|
GetLengthTString(TempStr,35);
|
|
|
Result:='21:';
|
|
|
Result:=Result+':';
|
|
|
Result:=Result+FormatListString(TempStr,6,35)+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
function GetNOTIFYString:String;
|
|
|
var
|
|
|
TempStr:TStringList;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
TempStr.Text:=FormatEdiString(aQuery.fieldbyname('֪ͨ<CDA8>˴<EFBFBD><CBB4><EFBFBD>').AsString);
|
|
|
GetLengthTString(TempStr,35);
|
|
|
Result:='22:';
|
|
|
Result:=Result+':';
|
|
|
Result:=Result+FormatListString(TempStr,6,35)+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
function GetMARKSString:String;
|
|
|
var
|
|
|
TempStr:TStringList;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
TempStr.Text:=FormatEdiString(aQuery.fieldbyname('<27><>ͷ').AsString);
|
|
|
GetLengthTString(TempStr,35);
|
|
|
Result:='44:';
|
|
|
Result:=Result+FormatListString(TempStr,10,35)+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
begin
|
|
|
SenderCode:=trim(edit1.Text) ;
|
|
|
ReciverCode:=trim(edit2.Text) ;
|
|
|
if bsSkinRadioGroup1.ItemIndex=0 then
|
|
|
strType:='9'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=1 then
|
|
|
strType:='2'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=2 then
|
|
|
strType:='3'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=3 then
|
|
|
strType:='4'
|
|
|
else strType:='9';
|
|
|
|
|
|
str:=Tstringlist.Create;
|
|
|
sl:=Tstringlist.Create;
|
|
|
sl1:=Tstringlist.Create;
|
|
|
str.Clear;
|
|
|
str.Add('00:IFTMBF:BOOKING:'+trim(strType)+':'+ SenderCode+':'+ReciverCode+':'+GetDatetime(datetimetostr(now),1)+#39);
|
|
|
Count:=0;
|
|
|
aQuery:=CreateAdoQuery;
|
|
|
try
|
|
|
aQuery.Close;aQuery.sql.Clear;
|
|
|
aQuery.SQL.Add('select * from t_op_seae where <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>=:<3A><><EFBFBD><EFBFBD> and <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><3E><><EFBFBD><EFBFBD>');
|
|
|
aQuery.Parameters.ParamByName('<27><><EFBFBD><EFBFBD>').Value:=frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring;
|
|
|
aQuery.Open;
|
|
|
if not aQuery.IsEmpty then begin
|
|
|
if not isEditrue(aQuery) then exit;
|
|
|
aQuery.first;
|
|
|
first:=true;
|
|
|
while not aQuery.eof do begin
|
|
|
if first then begin
|
|
|
str.Add ('02:'+ trim(frm_op_seae.t_op_seae.fieldbyname('ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring) +':'
|
|
|
+ trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +'::'
|
|
|
+ 'HMM:'
|
|
|
+ ':::::::'
|
|
|
+ '::'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27>˷<EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+':'+ #39);
|
|
|
end else begin
|
|
|
|
|
|
str.Add ('02:'+ trim(aQuery.fieldbyname('ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+ trim(aQuery.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring) +':'
|
|
|
+ trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+ trim(t_op_ams.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>').asstring) +':'
|
|
|
+ 'HMM:'
|
|
|
+ ':::::::'
|
|
|
+ '::'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27>˷<EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+':'+ #39);
|
|
|
{
|
|
|
str.Add ('02:'+ trim(aQuery.fieldbyname('ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+ trim(aQuery.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring) +':'
|
|
|
+ trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +'::'
|
|
|
+ ReciverCode +':'
|
|
|
+ ':::::::'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27>˷<EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+':::'+ #39);
|
|
|
}
|
|
|
end;
|
|
|
|
|
|
|
|
|
IF (trim(frm_op_seae.t_op_seae.fieldbyname('ǩ<><C7A9><EFBFBD><EFBFBD>ʽ').asstring)<>'<27><><EFBFBD><EFBFBD>') and (trim(frm_op_seae.t_op_seae.fieldbyname('ǩ<><C7A9><EFBFBD><EFBFBD>ʽ').asstring)<>'<27><><EFBFBD><EFBFBD><EFBFBD>ᵥ') then //<2F>ᵥ<EFBFBD><E1B5A5><EFBFBD><EFBFBD>
|
|
|
strtemp:='EXP'
|
|
|
else
|
|
|
strtemp:='ORI';
|
|
|
|
|
|
|
|
|
str.add('03:'+strtemp+':'
|
|
|
+':'
|
|
|
+ trim(aQuery.fieldbyname('ǩ<><C7A9><EFBFBD>ص<EFBFBD>').asstring) +':'
|
|
|
+ GetDatetime(trim(aQuery.fieldbyname('ǩ<><C7A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring),0)+':'
|
|
|
+ get_fenshu(trim(aQuery.fieldbyname('<27>ᵥ<EFBFBD><E1B5A5><EFBFBD><EFBFBD>').asstring),MblLength)+':'
|
|
|
+ trim(aQuery.fieldbyname('Ԥ<><D4A4><EFBFBD>ص<EFBFBD>').asstring) +':'
|
|
|
+ trim(aQuery.fieldbyname('Ԥ<><D4A4><EFBFBD>ص<EFBFBD>').asstring) +#39);
|
|
|
str.Add('11:'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>˱<EFBFBD><CBB1><EFBFBD>').asstring)+':'
|
|
|
+ trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+ trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+'::'
|
|
|
+ ReciverCode +':'
|
|
|
+ '::::::' +#39); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӫ<EFBFBD><D3AA>
|
|
|
str.Add ('12:'+trim(aQuery.fieldbyname('װ<>۴<EFBFBD><DBB4><EFBFBD>').asstring)+':'
|
|
|
+trim(aQuery.fieldbyname('װ<><D7B0><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+trim(aQuery.fieldbyname('װ<>۴<EFBFBD><DBB4><EFBFBD>').asstring)+':'
|
|
|
+trim(aQuery.fieldbyname('װ<><D7B0><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+trim(aQuery.fieldbyname('ж<><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(aQuery.fieldbyname('ж<><D0B6><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>').asstring) +':'
|
|
|
+trim(aQuery.fieldbyname('Ŀ<>ĵش<C4B5><D8B4><EFBFBD>').asstring) +':'
|
|
|
+trim(aQuery.fieldbyname('Ŀ<>ĵ<EFBFBD>').asstring) +#39);
|
|
|
|
|
|
if frm_data_share.t_code_free.locate('<27><><EFBFBD>ѷ<EFBFBD>ʽ',aQuery.fieldbyname('<27><><EFBFBD>ѷ<EFBFBD>ʽ').asstring,[]) then
|
|
|
begin
|
|
|
str.Add ('14:'+frm_data_share.t_code_free.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring+':'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD>ѷ<EFBFBD>ʽ').asstring)+#39);
|
|
|
|
|
|
str.Add('15:'
|
|
|
+'::'
|
|
|
+trim(frm_data_share.t_code_free.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+'::'
|
|
|
+ '::::' +#39); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӫ<EFBFBD><D3AA>
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
str.Add ('14:'+'P'+':'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD>ѷ<EFBFBD>ʽ').asstring)+#39);
|
|
|
str.Add('15:'
|
|
|
+'::'
|
|
|
+'P:'
|
|
|
+'::'
|
|
|
+ '::::' +#39); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӫ<EFBFBD><D3AA>
|
|
|
end;
|
|
|
|
|
|
|
|
|
Str.Add(GetRemarksString);
|
|
|
Str.Add(GetShipperString);
|
|
|
Str.Add(GetConsigneString);
|
|
|
Str.Add(GetNOTIFYString);
|
|
|
str.Add ('41:1:'+trim(aQuery.fieldbyname('<27><><EFBFBD>䷽ʽ').asstring)+':'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)+':' // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ S/R/D/O
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(GetpkgsEdi(aQuery.fieldbyname('<27><>װ').asstring))+':'
|
|
|
+trim(aQuery.fieldbyname('<27><>װ').asstring) +':' //<2F><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ˵<D7B0><CBB5>
|
|
|
+trim(aQuery.fieldbyname('<27>ܼ<EFBFBD>').asstring) +':' //<2F><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ˵<D7B0><CBB5>
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +'::::::' // <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װƤ<D7B0><C6A4>
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':::' // <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ<EFBFBD><D7B0><EFBFBD><EFBFBD>
|
|
|
+#39);
|
|
|
IF trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)='R'THEN
|
|
|
BEGIN
|
|
|
str.Add ('43:' // Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD>䶳
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+'::'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+'C:'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring) +':'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring) +':'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring) +':'
|
|
|
+'::::'
|
|
|
+#39);
|
|
|
END;
|
|
|
|
|
|
|
|
|
IF trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)='D'THEN
|
|
|
BEGIN
|
|
|
str.Add ('43:' // Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD>䶳
|
|
|
+trim(aQuery.fieldbyname('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+':'
|
|
|
+trim(aQuery.fieldbyname('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+'::'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':::::'
|
|
|
+#39);
|
|
|
END;
|
|
|
|
|
|
Str.Add(GetMARKSString);
|
|
|
// Str.Add(GetCARGODESCRIPTIONString);
|
|
|
|
|
|
sl1.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsString);
|
|
|
GetLengthTString(sl1,70);
|
|
|
sl.text:='';
|
|
|
for L:=0 to sl1.Count-1 do begin
|
|
|
if Trim(sl1.Strings[L])<>'' then
|
|
|
sl.Add(sl1.Strings[L]);
|
|
|
end;
|
|
|
|
|
|
M:=1;
|
|
|
for L:=0 to sl.Count-1 do begin
|
|
|
if M<=5 then begin
|
|
|
if M=1 then begin
|
|
|
s:='47:'+FormatEdiString(sl.Strings[L],0)+':';
|
|
|
end else begin
|
|
|
if M=5 then
|
|
|
s:=s+FormatEdiString(sl.Strings[L],0)
|
|
|
else
|
|
|
s:=s+FormatEdiString(sl.Strings[L],0)+':';
|
|
|
end;
|
|
|
end else begin
|
|
|
S:=S+'''';
|
|
|
Str.Add(S);
|
|
|
M:=1;
|
|
|
s:='47:'+FormatEdiString(sl.Strings[L],0)+':';
|
|
|
end;
|
|
|
M:=M+1;
|
|
|
end;
|
|
|
S:=S+'''';
|
|
|
Str.Add(S);
|
|
|
|
|
|
|
|
|
Count:=Count+11;
|
|
|
strRmain:='';
|
|
|
|
|
|
if (frm_op_seae.t_op_seae.fieldbyname('<27>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsBoolean) then
|
|
|
strSoc:='Y'
|
|
|
else strSoc:='N';
|
|
|
|
|
|
if first then
|
|
|
strRmain:=strRmain+'L:'+':'+':'+':'+':'+'N'+#39
|
|
|
else
|
|
|
strRmain:=strRmain+'L:'+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring)+':'+':'+':'+':'+strSoc+#39;
|
|
|
|
|
|
strsql:='select <20><><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>,sum(<28><><EFBFBD><EFBFBD>) as <20><><EFBFBD><EFBFBD> from t_op_ctn group by <20><><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD> having <20><><EFBFBD><EFBFBD>='
|
|
|
+#39+frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring+#39;
|
|
|
try
|
|
|
rs:=Tadoquery.Create(application);
|
|
|
rs.Connection := frm_main.db;
|
|
|
rs.sql.clear;
|
|
|
rs.sql.add(strsql);
|
|
|
rs.Open;
|
|
|
rs.First;
|
|
|
while not rs.Eof do
|
|
|
begin
|
|
|
str.Add ('48:'+Trim(GetCntrEdi(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))+':'+
|
|
|
trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+
|
|
|
strRmain);
|
|
|
Count:=Count+1;
|
|
|
rs.Next;
|
|
|
end;
|
|
|
{
|
|
|
strsql:='select * from t_op_ctn where <20><><EFBFBD><EFBFBD>='
|
|
|
+#39+frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring+#39;
|
|
|
rs.Close;
|
|
|
rs.sql.clear;
|
|
|
rs.sql.add(strsql);
|
|
|
rs.Open;
|
|
|
if not rs.IsEmpty then begin
|
|
|
if rs.FieldByName('<27><><EFBFBD><EFBFBD>').AsInteger>0 then begin
|
|
|
rs.First;
|
|
|
while not rs.Eof do begin
|
|
|
str.Add ('51:'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+Trim(GetCntrEdi(rs.fieldbyname('<27>ߴ<EFBFBD>').asstring,rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))+':'+
|
|
|
trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+trim(IntToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsInteger))+':'+trim(FloatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsFloat))+':'+''''
|
|
|
);
|
|
|
rs.Next;
|
|
|
end;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
}
|
|
|
rs.Close;
|
|
|
rs.Destroy;
|
|
|
except
|
|
|
on e:exception do
|
|
|
begin
|
|
|
rs.Close;
|
|
|
rs.Destroy;
|
|
|
exit;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
aQuery.Next;
|
|
|
first:=False;
|
|
|
end;
|
|
|
end;
|
|
|
finally
|
|
|
FreeAndNil(aQuery);
|
|
|
end;
|
|
|
|
|
|
str.Add('90:'
|
|
|
+ trim(Edit1.text)+':'
|
|
|
+ trim(edit3.text) +':'
|
|
|
+ trim(edit8.text)+':'
|
|
|
+ trim(edit9.text)+':'
|
|
|
+ trim(edit10.text)+':'
|
|
|
+ trim(edit11.text)+':'
|
|
|
+ trim(edit12.text)
|
|
|
+#39);
|
|
|
|
|
|
|
|
|
I:=str.Count;
|
|
|
str.Add('99:'+intToStr(i+1)+'''');
|
|
|
Result:=str;
|
|
|
end;
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.CreateSIEdiFile:TStrings;
|
|
|
var
|
|
|
str,sl,sl1:Tstringlist;
|
|
|
i,j,Count,l,M:integer;
|
|
|
strsql,strRmain,strtemp,S,fenshu,strSoc:string;
|
|
|
rs:Tadoquery;
|
|
|
wide_str,str_shr,str_con,str_not:widestring;
|
|
|
k:integer;
|
|
|
strType:string;
|
|
|
strDatetime:string;
|
|
|
SenderCode,ReciverCode:string;
|
|
|
firstcon:boolean;
|
|
|
|
|
|
function GetAMSSHIPPERString:String;
|
|
|
var
|
|
|
TempStr:TStringList;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
TempStr.Text:=FormatEdiString(t_op_ams.fieldbyname('AMS<4D><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsString);
|
|
|
GetLengthTString(TempStr,35);
|
|
|
Result:='23:';
|
|
|
Result:=Result+':';
|
|
|
Result:=Result+FormatListString(TempStr,6,35)+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
function GetRemarksString:String;
|
|
|
var
|
|
|
TempStr:TStringlist;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
if not bsSkinCheckRadioBox2.Checked then
|
|
|
TempStr.Text:=FormatEdiString(t_op_ams.fieldbyname('SI<53><49>ע').AsString)
|
|
|
else TempStr.Text:=FormatEdiString(frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('EDI<44><49>ע').AsString);
|
|
|
GetLengthTString(TempStr,70);
|
|
|
Result:='17:';
|
|
|
Result:=Result+FormatListString(TempStr,5,70)+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
begin
|
|
|
|
|
|
SenderCode:=trim(edit1.Text) ;
|
|
|
ReciverCode:=trim(edit2.Text) ;
|
|
|
if bsSkinRadioGroup1.ItemIndex=0 then
|
|
|
strType:='9'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=1 then
|
|
|
strType:='2'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=2 then
|
|
|
strType:='3'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=3 then
|
|
|
strType:='4'
|
|
|
else strType:='9';
|
|
|
|
|
|
if Trim(Edit15.Text)<>'' then
|
|
|
IntMarksRowCount:=StrToInt(Trim(Edit15.Text))
|
|
|
else IntMarksRowCount:=9;
|
|
|
|
|
|
if Trim(Edit16.Text)<>'' then
|
|
|
IntGoodsRowCount:=StrToInt(Trim(Edit16.Text))
|
|
|
else IntGoodsRowCount:=5;
|
|
|
|
|
|
if Trim(Edit17.Text)<>'' then
|
|
|
MblLength:=StrToInt(Trim(Edit17.Text))
|
|
|
else MblLength:=2;
|
|
|
|
|
|
|
|
|
str:=Tstringlist.Create;
|
|
|
sl:=Tstringlist.Create;
|
|
|
sl1:=Tstringlist.Create;
|
|
|
|
|
|
if bsSkinCheckRadioBox2.Checked then
|
|
|
with t_op_seae_assistant do
|
|
|
begin
|
|
|
Close;
|
|
|
SQL.Clear;
|
|
|
SQL.Add('select * from t_op_seae_assistant where AS_ID='''+frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('AS_ID').AsString+'''');
|
|
|
open;
|
|
|
end;
|
|
|
|
|
|
str.Clear;
|
|
|
str.Add('00:IFTMIN:Shipping Request:'+trim(strType)+':'+ SenderCode+':'+ReciverCode+':'+GetDatetime(datetimetostr(now),1)+#39);
|
|
|
Count:=0;
|
|
|
|
|
|
if not bsSkinCheckRadioBox2.Checked then //<2F><><EFBFBD><EFBFBD>
|
|
|
begin
|
|
|
|
|
|
str.Add ('02:'+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring)+':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring) +':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+ trim(t_op_ams.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>').asstring) +':'
|
|
|
+ 'HMM:'
|
|
|
+ ':::::::'
|
|
|
+ '::'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27>˷<EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+':'+ #39);
|
|
|
|
|
|
|
|
|
IF (trim(frm_op_seae.t_op_seae.fieldbyname('ǩ<><C7A9><EFBFBD><EFBFBD>ʽ').asstring)='<27><><EFBFBD><EFBFBD>') or (trim(frm_op_seae.t_op_seae.fieldbyname('ǩ<><C7A9><EFBFBD><EFBFBD>ʽ').asstring)='<27><><EFBFBD><EFBFBD><EFBFBD>ᵥ') then begin //<2F>ᵥ<EFBFBD><E1B5A5><EFBFBD><EFBFBD>
|
|
|
strtemp:='ORI';
|
|
|
fenshu:=get_fenshu(trim(frm_op_seae.t_op_seae.fieldbyname('<27>ᵥ<EFBFBD><E1B5A5><EFBFBD><EFBFBD>').asstring),MblLength);
|
|
|
end else begin
|
|
|
strtemp:='EXP';
|
|
|
fenshu:='0';
|
|
|
end;
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
str.Add ('02:'+ trim(frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring)+':'
|
|
|
+ trim(frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring) +':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+ trim(t_op_ams.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>').asstring) +':'
|
|
|
+ 'HMM:'
|
|
|
+ ':::::::'
|
|
|
+ '::'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27>˷<EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+':'+ #39);
|
|
|
|
|
|
|
|
|
IF (trim(frm_op_seae.t_op_seae.fieldbyname('ǩ<><C7A9><EFBFBD><EFBFBD>ʽ').asstring)='<27><><EFBFBD><EFBFBD>') or (trim(frm_op_seae.t_op_seae.fieldbyname('ǩ<><C7A9><EFBFBD><EFBFBD>ʽ').asstring)='<27><><EFBFBD><EFBFBD><EFBFBD>ᵥ') then begin //<2F>ᵥ<EFBFBD><E1B5A5><EFBFBD><EFBFBD>
|
|
|
strtemp:='ORI';
|
|
|
fenshu:=get_fenshu(trim(frm_op_seae.t_op_seae.fieldbyname('<27>ᵥ<EFBFBD><E1B5A5><EFBFBD><EFBFBD>').asstring),MblLength);
|
|
|
end else begin
|
|
|
strtemp:='EXP';
|
|
|
fenshu:='0';
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
str.add('03:'+strtemp+':'
|
|
|
+':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('ǩ<><C7A9><EFBFBD>ص<EFBFBD>').asstring) +':'
|
|
|
+ GetDatetime(trim(frm_op_seae.t_op_seae.fieldbyname('ǩ<><C7A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring),0)+':'
|
|
|
+ get_fenshu(trim(frm_op_seae.t_op_seae.fieldbyname('<27>ᵥ<EFBFBD><E1B5A5><EFBFBD><EFBFBD>').asstring),MblLength)+':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('װ<>۴<EFBFBD><DBB4><EFBFBD>').asstring)+':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('Ԥ<><D4A4><EFBFBD>ص<EFBFBD>').asstring)+':'
|
|
|
+ trim(t_op_ams.fieldbyname('<27><><EFBFBD><EFBFBD>AMS<4D><53>־').asstring) +':'
|
|
|
+ trim(t_op_ams.fieldbyname('<27><><EFBFBD>ô<EFBFBD>AMS<4D><53>־').asstring)
|
|
|
+#39);
|
|
|
str.Add('11:'
|
|
|
+ trim(GetvesselEdi(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))+':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+'::'
|
|
|
+ ReciverCode +':'
|
|
|
+ '::::::' +#39); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӫ<EFBFBD><D3AA>
|
|
|
str.Add ('12:'+trim(frm_op_seae.t_op_seae.fieldbyname('װ<>۴<EFBFBD><DBB4><EFBFBD>').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('װ<><D7B0><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('װ<>۴<EFBFBD><DBB4><EFBFBD>').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('װ<><D7B0><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('ж<><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('ж<><D0B6><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('Ŀ<>ĵش<C4B5><D8B4><EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('Ŀ<>ĵ<EFBFBD>').asstring) +#39);
|
|
|
|
|
|
if frm_data_share.t_code_free.locate('<27><><EFBFBD>ѷ<EFBFBD>ʽ',frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ѷ<EFBFBD>ʽ').asstring,[]) then
|
|
|
begin
|
|
|
str.Add ('14:'+frm_data_share.t_code_free.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ѷ<EFBFBD>ʽ').asstring)+#39);
|
|
|
|
|
|
str.Add('15:'
|
|
|
+'::'
|
|
|
+trim(frm_data_share.t_code_free.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+'::'
|
|
|
+ '::::' +#39); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӫ<EFBFBD><D3AA>
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
str.Add ('14:'+'P'+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ѷ<EFBFBD>ʽ').asstring)+#39);
|
|
|
str.Add('15:'
|
|
|
+'::'
|
|
|
+'P:'
|
|
|
+'::'
|
|
|
+ '::::' +#39); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӫ<EFBFBD><D3AA>
|
|
|
end;
|
|
|
|
|
|
Str.Add(GetRemarksString);
|
|
|
|
|
|
if (bsSkinCheckRadioBox2.Checked) and (not t_op_seae_assistant.IsEmpty) then
|
|
|
sl1.Text:=FormatEdiString(frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD><CBB4><EFBFBD>').asstring)
|
|
|
else
|
|
|
sl1.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD><CBB4><EFBFBD>').asstring);
|
|
|
GetLengthTString(sl1,35);
|
|
|
|
|
|
strtemp:='20::'+sl1[0]+':';
|
|
|
if sl1.Count>=2 then
|
|
|
strtemp:=strtemp+sl1[1];
|
|
|
if (sl1.Count>=3) and (sl1.Count<=6) then
|
|
|
begin
|
|
|
for j:=2 to sl1.Count-1 do
|
|
|
begin
|
|
|
strtemp:=strtemp+':'+sl1[j]
|
|
|
end;
|
|
|
end;
|
|
|
if sl1.Count>6 then
|
|
|
begin
|
|
|
for j:=2 to 4 do
|
|
|
begin
|
|
|
strtemp:=strtemp+':'+sl1[j]
|
|
|
end;
|
|
|
s:='';
|
|
|
strtemp:=strtemp+':'+GetLengthword(s,34,sl1[5])+'+';
|
|
|
Str_shr:='+'+S;
|
|
|
for j:=6 to sl1.Count-1 do begin
|
|
|
Str_shr:=Str_shr+' '+sl1[j]
|
|
|
end;
|
|
|
{
|
|
|
strtemp:=strtemp+':'+Copy(sl1[4],1,34)+'*';
|
|
|
|
|
|
Str_shr:='*'+Copy(sl1[4],34,1);
|
|
|
for j:=5 to sl1.Count-1 do begin
|
|
|
Str_shr:=Str_shr+' '+sl1[j]
|
|
|
end;
|
|
|
}
|
|
|
end;
|
|
|
strtemp:=strtemp+#39;
|
|
|
str.Add(strtemp);
|
|
|
count:=count+1;
|
|
|
|
|
|
if (bsSkinCheckRadioBox2.Checked) and (not t_op_seae_assistant.IsEmpty) then
|
|
|
sl1.Text:=FormatEdiString(frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('<27>ջ<EFBFBD><D5BB>˴<EFBFBD><CBB4><EFBFBD>').asstring)
|
|
|
else
|
|
|
sl1.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('<27>ջ<EFBFBD><D5BB>˴<EFBFBD><CBB4><EFBFBD>').asstring);
|
|
|
GetLengthTString(sl1,35);
|
|
|
|
|
|
strtemp:='21::'+sl1[0]+':';
|
|
|
if sl1.Count>=2 then
|
|
|
strtemp:=strtemp+sl1[1];
|
|
|
if (sl1.Count>=3) and (sl1.Count<=6) then
|
|
|
begin
|
|
|
for j:=2 to sl1.Count-1 do
|
|
|
begin
|
|
|
strtemp:=strtemp+':'+sl1[j]
|
|
|
end;
|
|
|
end;
|
|
|
if sl1.Count>6 then
|
|
|
begin
|
|
|
for j:=2 to 4 do
|
|
|
begin
|
|
|
strtemp:=strtemp+':'+sl1[j]
|
|
|
end;
|
|
|
s:='';
|
|
|
strtemp:=strtemp+':'+GetLengthword(s,33,sl1[5])+'++';
|
|
|
Str_con:='++'+S;
|
|
|
for j:=6 to sl1.Count-1 do begin
|
|
|
Str_con:=Str_con+' '+sl1[j]
|
|
|
end;
|
|
|
|
|
|
{
|
|
|
strtemp:=strtemp+':'+Copy(sl1[4],1,33)+'**';
|
|
|
Str_con:='**'+Copy(sl1[4],33,2);
|
|
|
for j:=5 to sl1.Count-1 do begin
|
|
|
Str_con:=Str_con+' '+sl1[j]
|
|
|
end;
|
|
|
}
|
|
|
end;
|
|
|
strtemp:=strtemp+#39;
|
|
|
str.Add(strtemp);
|
|
|
count:=count+1;
|
|
|
|
|
|
if (bsSkinCheckRadioBox2.Checked) and (not t_op_seae_assistant.IsEmpty) then
|
|
|
sl1.Text:=FormatEdiString(frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('֪ͨ<CDA8>˴<EFBFBD><CBB4><EFBFBD>').asstring)
|
|
|
else
|
|
|
sl1.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('֪ͨ<CDA8>˴<EFBFBD><CBB4><EFBFBD>').asstring);
|
|
|
GetLengthTString(sl1,35);
|
|
|
|
|
|
strtemp:='22::'+sl1[0]+':';
|
|
|
if sl1.Count>=2 then
|
|
|
strtemp:=strtemp+sl1[1];
|
|
|
if (sl1.Count>=3) and (sl1.Count<=6) then
|
|
|
begin
|
|
|
for j:=2 to sl1.Count-1 do
|
|
|
begin
|
|
|
strtemp:=strtemp+':'+sl1[j]
|
|
|
end;
|
|
|
end;
|
|
|
if sl1.Count>6 then
|
|
|
begin
|
|
|
for j:=2 to 4 do
|
|
|
begin
|
|
|
strtemp:=strtemp+':'+sl1[j]
|
|
|
end;
|
|
|
|
|
|
s:='';
|
|
|
strtemp:=strtemp+':'+GetLengthword(s,32,sl1[5])+'+++';
|
|
|
Str_not:='+++'+S;
|
|
|
for j:=6 to sl1.Count-1 do begin
|
|
|
Str_not:=Str_not+' '+sl1[j]
|
|
|
end;
|
|
|
|
|
|
{
|
|
|
strtemp:=strtemp+':'+Copy(sl1[4],1,32)+'***';
|
|
|
Str_not:='***'+Copy(sl1[4],32,3);
|
|
|
for j:=5 to sl1.Count-1 do begin
|
|
|
Str_not:=Str_not+' '+sl1[j]
|
|
|
end;
|
|
|
}
|
|
|
end;
|
|
|
strtemp:=strtemp+#39;
|
|
|
str.Add(strtemp);
|
|
|
count:=count+1;
|
|
|
|
|
|
|
|
|
if (frm_op_seae.t_op_seae.fieldbyname('<27>ڶ<EFBFBD>֪ͨ<CDA8><D6AA>').asstring<>'') then begin
|
|
|
sl1.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('<27>ڶ<EFBFBD>֪ͨ<CDA8><D6AA>').asstring);
|
|
|
GetLengthTString(sl1,35);
|
|
|
|
|
|
strtemp:='23::'+sl1[0]+':';
|
|
|
if sl1.Count>=2 then
|
|
|
strtemp:=strtemp+sl1[1];
|
|
|
if (sl1.Count>=3) and (sl1.Count<=6) then
|
|
|
begin
|
|
|
for j:=2 to sl1.Count-1 do
|
|
|
begin
|
|
|
strtemp:=strtemp+':'+sl1[j]
|
|
|
end;
|
|
|
end;
|
|
|
if sl1.Count>6 then
|
|
|
begin
|
|
|
for j:=2 to 4 do
|
|
|
begin
|
|
|
strtemp:=strtemp+':'+sl1[j]
|
|
|
end;
|
|
|
s:='';
|
|
|
strtemp:=strtemp+':'+GetLengthword(s,33,sl1[5])+'++';
|
|
|
Str_con:='++'+S;
|
|
|
for j:=6 to sl1.Count-1 do begin
|
|
|
Str_con:=Str_con+' '+sl1[j]
|
|
|
end;
|
|
|
|
|
|
|
|
|
end;
|
|
|
strtemp:=strtemp+#39;
|
|
|
str.Add(strtemp);
|
|
|
count:=count+1;
|
|
|
end;
|
|
|
|
|
|
if (t_op_ams.fieldbyname('AMS<4D><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsString<>'') then
|
|
|
Str.Add(GetAMSSHIPPERString);
|
|
|
|
|
|
|
|
|
if not bsSkinCheckRadioBox2.Checked then
|
|
|
begin
|
|
|
str.Add ('41:1:'+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>䷽ʽ').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)+':' // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ S/R/D/O
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(GetpkgsEdi(frm_op_seae.t_op_seae.fieldbyname('<27><>װ').asstring))+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><>װ').asstring) +':' //<2F><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ˵<D7B0><CBB5>
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27>ܼ<EFBFBD>').asstring) +':' //<2F><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ˵<D7B0><CBB5>
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +'::::::' // <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װƤ<D7B0><C6A4>
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':::' // <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ<EFBFBD><D7B0><EFBFBD><EFBFBD>
|
|
|
+#39);
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
str.Add ('41:1:'+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>䷽ʽ').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)+':' // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ S/R/D/O
|
|
|
+trim(frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(GetpkgsEdi(frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('<27><>װ').asstring))+':'
|
|
|
+trim(frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('<27><>װ').asstring) +':' //<2F><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ˵<D7B0><CBB5>
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27>ܼ<EFBFBD>').asstring) +':' //<2F><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ˵<D7B0><CBB5>
|
|
|
+trim(frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +'::::::' // <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װƤ<D7B0><C6A4>
|
|
|
+trim(frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':::' // <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ<EFBFBD><D7B0><EFBFBD><EFBFBD>
|
|
|
+#39);
|
|
|
end;
|
|
|
IF trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)='R' THEN
|
|
|
BEGIN
|
|
|
str.Add ('43:' // Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD>䶳
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+'::'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+'C:'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring) +':'
|
|
|
+'::::'
|
|
|
+#39);
|
|
|
END;
|
|
|
IF trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)='D'THEN
|
|
|
BEGIN
|
|
|
str.Add ('43:' // Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD>䶳
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+'::'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':::::'
|
|
|
+#39);
|
|
|
END;
|
|
|
|
|
|
if (bsSkinCheckRadioBox2.Checked) and (not t_op_seae_assistant.IsEmpty) then
|
|
|
sl.Text:=FormatEdiString(frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('<27><>ͷ').asstring)
|
|
|
else
|
|
|
sl.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('<27><>ͷ').AsString);
|
|
|
GetLengthTString(sl,35);
|
|
|
M:=1;
|
|
|
for L:=0 to sl.Count-1 do begin
|
|
|
if M<=IntMarksRowCount then
|
|
|
begin
|
|
|
if M=1 then
|
|
|
begin
|
|
|
s:='44:'+sl.Strings[L]+':';
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
if M=IntMarksRowCount then
|
|
|
s:=s+sl.Strings[L]
|
|
|
else
|
|
|
s:=s+sl.Strings[L]+':';
|
|
|
end;
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
S:=S+'''';
|
|
|
Str.Add(S);
|
|
|
M:=1;
|
|
|
s:='44:'+sl.Strings[L]+':';
|
|
|
end;
|
|
|
M:=M+1;
|
|
|
end;
|
|
|
S:=S+'''';
|
|
|
Str.Add(S);
|
|
|
|
|
|
{ LJP for L:=0 to sl.Count-1 do begin
|
|
|
if M<=10 then begin
|
|
|
if M=1 then begin
|
|
|
s:='44:'+sl.Strings[L]+':';
|
|
|
end else begin
|
|
|
if M=10 then
|
|
|
s:=s+sl.Strings[L]
|
|
|
else
|
|
|
s:=s+sl.Strings[L]+':';
|
|
|
end;
|
|
|
end else begin
|
|
|
S:=S+'''';
|
|
|
Str.Add(S);
|
|
|
M:=1;
|
|
|
s:='44:'+sl.Strings[L]+':';
|
|
|
end;
|
|
|
M:=M+1;
|
|
|
end;
|
|
|
S:=S+'''';
|
|
|
Str.Add(S);
|
|
|
}
|
|
|
|
|
|
|
|
|
if (bsSkinCheckRadioBox2.Checked) and (not frm_op_seae_assistant.t_op_seae_assistant.IsEmpty) then
|
|
|
sl1.Text:=FormatEdiString(frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)
|
|
|
else
|
|
|
sl1.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsString);
|
|
|
|
|
|
if str_shr<>'' then begin
|
|
|
sl1.Add(str_shr)
|
|
|
end;
|
|
|
if str_con<>'' then begin
|
|
|
sl1.Add(str_con)
|
|
|
end;
|
|
|
if str_not<>'' then begin
|
|
|
sl1.Add(str_not)
|
|
|
end;
|
|
|
|
|
|
GetLengthTString(sl1,70);
|
|
|
|
|
|
sl.text:='';
|
|
|
|
|
|
for L:=0 to sl1.Count-1 do begin
|
|
|
sl.Add(sl1.Strings[L]);
|
|
|
end;
|
|
|
|
|
|
|
|
|
M:=1;
|
|
|
for L:=0 to sl.Count-1 do
|
|
|
begin
|
|
|
if M<=IntGoodsRowCount then
|
|
|
begin
|
|
|
if M=1 then
|
|
|
begin
|
|
|
s:='47:'+sl.Strings[L]+':';
|
|
|
end else
|
|
|
begin
|
|
|
if M=IntGoodsRowCount then
|
|
|
s:=s+sl.Strings[L]
|
|
|
else
|
|
|
s:=s+sl.Strings[L]+':';
|
|
|
end;
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
S:=S+'''';
|
|
|
Str.Add(S);
|
|
|
M:=1;
|
|
|
s:='47:'+sl.Strings[L]+':';
|
|
|
end;
|
|
|
M:=M+1;
|
|
|
end;
|
|
|
S:=S+'''';
|
|
|
Str.Add(S);
|
|
|
|
|
|
// Str.Add(GetCARGODESCRIPTIONString);
|
|
|
|
|
|
Count:=Count+11;
|
|
|
strRmain:='';
|
|
|
if (frm_op_seae.t_op_seae.fieldbyname('<27>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsBoolean) then
|
|
|
strSoc:='Y'
|
|
|
else strSoc:='N';
|
|
|
|
|
|
if trim(frm_op_seae.t_op_seae.fieldbyname('װ<>˷<EFBFBD>ʽ').asstring)='<27><><EFBFBD><EFBFBD>' then
|
|
|
begin
|
|
|
if frm_data_share.t_crm_client_changzhan.locate('<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>',frm_op_seae.t_op_seae.fieldbyname('<27><>վ').asstring,[])then
|
|
|
begin
|
|
|
if not bsSkinCheckRadioBox2.Checked then
|
|
|
strRmain:=strRmain+'F:'+':'+':'+frm_data_share.t_crm_client_changzhan.fieldbyname('EDI<44><49><EFBFBD><EFBFBD>').asstring+':'+':'+strSoc+#39
|
|
|
else strRmain:=strRmain+'L:'+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring)+':'+':'+frm_data_share.t_crm_client_changzhan.fieldbyname('EDI<44><49><EFBFBD><EFBFBD>').asstring+':'+':'+'N'+#39;
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
if not bsSkinCheckRadioBox2.Checked then
|
|
|
strRmain:=strRmain+'F:'+':'+':'+':'+':'+strSoc+#39
|
|
|
else strRmain:=strRmain+'L:'+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring)+':'+':'+':'+':'+strSoc+#39;
|
|
|
end;
|
|
|
if not bsSkinCheckRadioBox2.Checked then
|
|
|
begin
|
|
|
strsql:='select <20><><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>,sum(<28><><EFBFBD><EFBFBD>) as <20><><EFBFBD><EFBFBD> from t_op_ctn group by <20><><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD> having <20><><EFBFBD><EFBFBD>='
|
|
|
+#39+frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring+#39;
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
strsql:='select as_id,<2C><><EFBFBD><EFBFBD>,sum(<28><><EFBFBD><EFBFBD>) as <20><><EFBFBD><EFBFBD> from t_op_ctn_fendan group by as_id,<2C><><EFBFBD><EFBFBD> having as_id='
|
|
|
+#39+frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('as_id').asstring+#39;
|
|
|
end;
|
|
|
try
|
|
|
rs:=Tadoquery.Create(application);
|
|
|
rs.Connection := frm_main.db;
|
|
|
rs.sql.clear;
|
|
|
rs.sql.add(strsql);
|
|
|
rs.Open;
|
|
|
rs.First;
|
|
|
while not rs.Eof do
|
|
|
begin
|
|
|
str.Add ('48:'+Trim(GetCntrEdi(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))+':'+
|
|
|
trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+
|
|
|
strRmain);
|
|
|
Count:=Count+1;
|
|
|
rs.Next;
|
|
|
end;
|
|
|
if not bsSkinCheckRadioBox2.Checked then
|
|
|
begin
|
|
|
strsql:='select * from t_op_ctn where <20><><EFBFBD><EFBFBD>='
|
|
|
+#39+frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring+#39;
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
strsql:='select * from t_op_ctn_fendan where as_id='
|
|
|
+#39+frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('as_id').asstring+#39;
|
|
|
end;
|
|
|
rs.Close;
|
|
|
rs.sql.clear;
|
|
|
rs.sql.add(strsql);
|
|
|
rs.Open;
|
|
|
firstcon:=true;
|
|
|
if not rs.IsEmpty then begin
|
|
|
rs.First;
|
|
|
while not rs.Eof do begin
|
|
|
if pos('FR',rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)>0 then begin
|
|
|
if firstcon then
|
|
|
str.Add ('51:'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+Trim(GetCntrEdi(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))
|
|
|
+':NIL'+':'+trim(IntToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsInteger))+':'+trim(FloatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsFloat))+'::'
|
|
|
+trim(floatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').Asfloat))+':'+'''')
|
|
|
else
|
|
|
str.Add ('51:'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+Trim(GetCntrEdi(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))
|
|
|
+':NIL'+':'+trim(IntToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsInteger))+':'+trim(FloatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsFloat))+'::'
|
|
|
+trim(floatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').Asfloat))+':'+'''');
|
|
|
|
|
|
end else begin
|
|
|
if firstcon then
|
|
|
str.Add ('51:'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+Trim(GetCntrEdi(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))+':'+
|
|
|
trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+trim(IntToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsInteger))+':'+trim(FloatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsFloat))+'::'
|
|
|
+trim(floatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').Asfloat))+':'+'''')
|
|
|
else
|
|
|
str.Add ('51:'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+Trim(GetCntrEdi(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))+':'+
|
|
|
trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+trim(IntToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsInteger))+':'+trim(FloatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsFloat))+'::'
|
|
|
+trim(floatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').Asfloat))+':'+'''');
|
|
|
|
|
|
end;
|
|
|
firstcon:=false;
|
|
|
rs.Next;
|
|
|
end;
|
|
|
if not bsSkinCheckRadioBox2.Checked then
|
|
|
begin
|
|
|
with t_op_edictn do begin
|
|
|
Close;
|
|
|
SQL.Clear;
|
|
|
SQL.Add('select d.<2E><><EFBFBD><EFBFBD>,d.HTS,d.<2E><><EFBFBD><EFBFBD>,d.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,d.<2E><>װ,d.<2E><><EFBFBD><EFBFBD>,c.<2E><><EFBFBD><EFBFBD>,c.<2E><><EFBFBD><EFBFBD> from t_op_ctn_detail d left join t_op_ctn c on (c.ctn_id=d.ctn_id) where c.<2E><><EFBFBD><EFBFBD>='''+frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').AsString+'''');
|
|
|
open;
|
|
|
if not IsEmpty then begin
|
|
|
first;
|
|
|
while not eof do begin
|
|
|
str.Add ('53:'+trim(fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+trim(fieldbyname('HTS').asstring)+':'+trim(FormatEdiString(fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring))
|
|
|
+':'+trim(GetpkgsEdi(fieldbyname('<27><>װ').asstring))+':'+trim(IntToStr(fieldbyname('<27><><EFBFBD><EFBFBD>').AsInteger))+':'
|
|
|
+trim(FloatToStr(fieldbyname('<27><><EFBFBD><EFBFBD>').AsFloat))+'''');
|
|
|
next;
|
|
|
end;
|
|
|
end else begin
|
|
|
rs.First;
|
|
|
while not rs.Eof do begin
|
|
|
str.Add ('53:'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>䷽ʽ').asstring+':'+trim(rs.fieldbyname('Ʒ<><C6B7>').asstring)+':'+trim(GetpkgsEdi(rs.fieldbyname('<27><>װ').asstring))
|
|
|
+':'+trim(IntToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsInteger))+':'+trim(FloatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsFloat))+'''');
|
|
|
rs.Next;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
end else begin
|
|
|
rs.First;
|
|
|
while not rs.Eof do begin
|
|
|
str.Add ('53:'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+trim(frm_op_seae_assistant.t_op_seae_assistant.fieldbyname('HS<48><53><EFBFBD><EFBFBD>').asstring)+':'+trim(FormatEdiString(rs.fieldbyname('Ʒ<><C6B7>').asstring))
|
|
|
+':'+trim(GetpkgsEdi(rs.fieldbyname('<27><>װ').asstring))+':'+trim(IntToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsInteger))+':'
|
|
|
+trim(FloatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsFloat))+'''');
|
|
|
rs.Next;
|
|
|
end;
|
|
|
|
|
|
|
|
|
end;
|
|
|
{
|
|
|
with t_op_edictn do begin
|
|
|
Close;
|
|
|
SQL.Clear;
|
|
|
SQL.Add('select * from t_op_edictn where <20><><EFBFBD><EFBFBD>='''+frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').AsString+'''');
|
|
|
open;
|
|
|
if not IsEmpty then begin
|
|
|
first;
|
|
|
while not eof do begin
|
|
|
str.Add ('53:'+trim(fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+trim(fieldbyname('HTS').asstring)+':'+trim(fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)
|
|
|
+':'+trim(GetpkgsEdi(fieldbyname('<27><>װ').asstring))+':'+trim(IntToStr(fieldbyname('<27><><EFBFBD><EFBFBD>').AsInteger))+':'
|
|
|
+trim(FloatToStr(fieldbyname('<27><><EFBFBD><EFBFBD>').AsFloat))+':'+trim(fieldbyname('<27><>ֵ').asstring)+':'+trim(fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CDB4><EFBFBD>').Asstring)+'''');
|
|
|
next;
|
|
|
end;
|
|
|
end else begin
|
|
|
rs.First;
|
|
|
while not rs.Eof do begin
|
|
|
str.Add ('53:'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+'::'+trim(rs.fieldbyname('Ʒ<><C6B7>').asstring)+':'+trim(GetpkgsEdi(rs.fieldbyname('<27><>װ').asstring))
|
|
|
+trim(IntToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsInteger))+':'+trim(FloatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsFloat))+'''');
|
|
|
rs.Next;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
}
|
|
|
end;
|
|
|
|
|
|
rs.Close;
|
|
|
rs.Destroy;
|
|
|
except
|
|
|
on e:exception do
|
|
|
begin
|
|
|
rs.Close;
|
|
|
rs.Destroy;
|
|
|
exit;
|
|
|
end;
|
|
|
end;
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
if frm_data_share.t_crm_client_changzhan.locate('<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>',frm_op_seae.t_op_seae.fieldbyname('<27><>վ').asstring,[])then
|
|
|
begin
|
|
|
strRmain:=strRmain+'L:'+':'+':'+frm_data_share.t_crm_client_changzhan.fieldbyname('EDI<44><49><EFBFBD><EFBFBD>').asstring+':'+':'+strSoc+#39;
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
strRmain:=strRmain+'L:'+':'+':'+':'+':'+'N'+#39;
|
|
|
end;
|
|
|
str.Add('48:'+':'+':'+strRmain);
|
|
|
Count:=Count+1;
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
str.Add('90:'
|
|
|
+ trim(Edit1.text)+':'
|
|
|
+ trim(edit3.text) +':'
|
|
|
+ trim(edit8.text)+':'
|
|
|
+ trim(edit9.text)+':'
|
|
|
+ trim(edit10.text)+':'
|
|
|
+ trim(edit11.text)+':'
|
|
|
+ trim(edit12.text)
|
|
|
+#39);
|
|
|
|
|
|
|
|
|
I:=str.Count;
|
|
|
str.Add('99:'+intToStr(i+1)+'''');
|
|
|
Result:=str;
|
|
|
end;
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.CreateSIZHUEdiFile:TStrings;
|
|
|
var
|
|
|
sl,sl1,str:Tstringlist;
|
|
|
i,j,Count,l,M:integer;
|
|
|
first:Boolean;
|
|
|
strsql,strRmain,strtemp:string;
|
|
|
rs,aQuery:Tadoquery;
|
|
|
wide_str,str_shr,str_con,str_not:widestring;
|
|
|
k:integer;
|
|
|
strType,s:string;
|
|
|
strDatetime:string;
|
|
|
SenderCode,ReciverCode:string;
|
|
|
|
|
|
function GetRemarksString:String;
|
|
|
var
|
|
|
TempStr:TStringlist;
|
|
|
begin
|
|
|
TempStr:=TStringList.Create;
|
|
|
try
|
|
|
TempStr.Text:=FormatEdiString(t_op_ams.fieldbyname('SI<53><49>ע').AsString);
|
|
|
GetLengthTString(TempStr,70);
|
|
|
Result:='17:';
|
|
|
Result:=Result+FormatListString(TempStr,5,70)+'''';
|
|
|
finally
|
|
|
FreeAndNil(TempStr);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
begin
|
|
|
SenderCode:=trim(edit1.Text) ;
|
|
|
ReciverCode:=trim(edit2.Text) ;
|
|
|
if bsSkinRadioGroup1.ItemIndex=0 then
|
|
|
strType:='9'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=1 then
|
|
|
strType:='2'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=2 then
|
|
|
strType:='3'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=3 then
|
|
|
strType:='4'
|
|
|
else strType:='9';
|
|
|
|
|
|
str:=Tstringlist.Create;
|
|
|
sl:=Tstringlist.Create;
|
|
|
sl1:=Tstringlist.Create;
|
|
|
str.Clear;
|
|
|
str.Add('00:IFTMIN:BOOKING:'+trim(strType)+':'+ SenderCode+':'+ReciverCode+':'+GetDatetime(datetimetostr(now),1)+#39);
|
|
|
Count:=0;
|
|
|
aQuery:=CreateAdoQuery;
|
|
|
try
|
|
|
aQuery.Close;aQuery.sql.Clear;
|
|
|
aQuery.SQL.Add('select * from t_op_seae where <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>=:<3A><><EFBFBD><EFBFBD> and <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><3E><><EFBFBD><EFBFBD>');
|
|
|
aQuery.Parameters.ParamByName('<27><><EFBFBD><EFBFBD>').Value:=frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring;
|
|
|
aQuery.Open;
|
|
|
if not aQuery.IsEmpty then begin
|
|
|
if not isEditrue(aQuery) then exit;
|
|
|
aQuery.first;
|
|
|
first:=true;
|
|
|
while not aQuery.eof do begin
|
|
|
|
|
|
if bsSkinCheckRadioBox2.Checked then
|
|
|
with t_op_seae_assistant do begin
|
|
|
Close;
|
|
|
SQL.Clear;
|
|
|
SQL.Add('select * from t_op_seae_assistant where <20><><EFBFBD><EFBFBD>='''+aQuery.fieldbyname('<27><><EFBFBD><EFBFBD>').AsString+'''');
|
|
|
open;
|
|
|
end;
|
|
|
|
|
|
if first then begin
|
|
|
str.Add ('02:'+ trim(frm_op_seae.t_op_seae.fieldbyname('ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring) +':'
|
|
|
+ trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +'::'
|
|
|
+ 'HMM:'
|
|
|
+ ':::::::'
|
|
|
+ '::'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27>˷<EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+':'+ #39);
|
|
|
end else begin
|
|
|
|
|
|
str.Add ('02:'+ trim(aQuery.fieldbyname('ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+ trim(aQuery.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring) +':'
|
|
|
+ trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+ trim(t_op_ams.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>').asstring) +':'
|
|
|
+ 'HMM:'
|
|
|
+ ':::::::'
|
|
|
+ '::'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27>˷<EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+':'+ #39);
|
|
|
{
|
|
|
str.Add ('02:'+ trim(aQuery.fieldbyname('ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+ trim(aQuery.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring) +':'
|
|
|
+ trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +'::'
|
|
|
+ ReciverCode +':'
|
|
|
+ ':::::::'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27>˷<EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+':::'+ #39);
|
|
|
}
|
|
|
end;
|
|
|
|
|
|
|
|
|
IF (trim(frm_op_seae.t_op_seae.fieldbyname('ǩ<><C7A9><EFBFBD><EFBFBD>ʽ').asstring)='<27><><EFBFBD><EFBFBD>') or (trim(frm_op_seae.t_op_seae.fieldbyname('ǩ<><C7A9><EFBFBD><EFBFBD>ʽ').asstring)='<27><><EFBFBD><EFBFBD><EFBFBD>ᵥ') then //<2F>ᵥ<EFBFBD><E1B5A5><EFBFBD><EFBFBD>
|
|
|
strtemp:='ORI'
|
|
|
else
|
|
|
strtemp:='EXP';
|
|
|
|
|
|
|
|
|
str.add('03:'+strtemp+':'
|
|
|
+':'
|
|
|
+ trim(aQuery.fieldbyname('ǩ<><C7A9><EFBFBD>ص<EFBFBD>').asstring) +':'
|
|
|
+ GetDatetime(trim(aQuery.fieldbyname('ǩ<><C7A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring),0)+':'
|
|
|
+ get_fenshu(trim(aQuery.fieldbyname('<27>ᵥ<EFBFBD><E1B5A5><EFBFBD><EFBFBD>').asstring),MblLength)+':'
|
|
|
+ trim(aQuery.fieldbyname('Ԥ<><D4A4><EFBFBD>ص<EFBFBD>').asstring) +':'
|
|
|
+ trim(aQuery.fieldbyname('Ԥ<><D4A4><EFBFBD>ص<EFBFBD>').asstring) +#39);
|
|
|
str.Add('11:'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>˱<EFBFBD><CBB1><EFBFBD>').asstring)+':'
|
|
|
+ trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+ trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+'::'
|
|
|
+ ReciverCode +':'
|
|
|
+ '::::::' +#39); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӫ<EFBFBD><D3AA>
|
|
|
str.Add ('12:'+trim(aQuery.fieldbyname('װ<>۴<EFBFBD><DBB4><EFBFBD>').asstring)+':'
|
|
|
+trim(aQuery.fieldbyname('װ<><D7B0><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+trim(aQuery.fieldbyname('װ<>۴<EFBFBD><DBB4><EFBFBD>').asstring)+':'
|
|
|
+trim(aQuery.fieldbyname('װ<><D7B0><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+trim(aQuery.fieldbyname('ж<><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(aQuery.fieldbyname('ж<><D0B6><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>').asstring) +':'
|
|
|
+trim(aQuery.fieldbyname('Ŀ<>ĵش<C4B5><D8B4><EFBFBD>').asstring) +':'
|
|
|
+trim(aQuery.fieldbyname('Ŀ<>ĵ<EFBFBD>').asstring) +#39);
|
|
|
|
|
|
if frm_data_share.t_code_free.locate('<27><><EFBFBD>ѷ<EFBFBD>ʽ',aQuery.fieldbyname('<27><><EFBFBD>ѷ<EFBFBD>ʽ').asstring,[]) then
|
|
|
begin
|
|
|
str.Add ('14:'+frm_data_share.t_code_free.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring+':'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD>ѷ<EFBFBD>ʽ').asstring)+#39);
|
|
|
|
|
|
str.Add('15:'
|
|
|
+'::'
|
|
|
+trim(frm_data_share.t_code_free.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+'::'
|
|
|
+ '::::' +#39); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӫ<EFBFBD><D3AA>
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
str.Add ('14:'+'P'+':'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD>ѷ<EFBFBD>ʽ').asstring)+#39);
|
|
|
str.Add('15:'
|
|
|
+'::'
|
|
|
+'P:'
|
|
|
+'::'
|
|
|
+ '::::' +#39); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӫ<EFBFBD><D3AA>
|
|
|
end;
|
|
|
|
|
|
|
|
|
Str.Add(GetRemarksString);
|
|
|
|
|
|
if (bsSkinCheckRadioBox2.Checked) and (not t_op_seae_assistant.IsEmpty) then
|
|
|
sl1.Text:=FormatEdiString(t_op_seae_assistant.fieldbyname('<27>ջ<EFBFBD><D5BB>˴<EFBFBD><CBB4><EFBFBD>').asstring)
|
|
|
else
|
|
|
sl1.Text:=FormatEdiString(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD><CBB4><EFBFBD>').asstring);
|
|
|
GetLengthTString(sl1,35);
|
|
|
|
|
|
strtemp:='20::'+sl1[0]+':';
|
|
|
if sl1.Count>=2 then
|
|
|
strtemp:=strtemp+sl1[1];
|
|
|
if (sl1.Count>=3) and (sl1.Count<=5) then
|
|
|
begin
|
|
|
for j:=2 to sl1.Count-1 do
|
|
|
begin
|
|
|
strtemp:=strtemp+':'+sl1[j]
|
|
|
end;
|
|
|
end;
|
|
|
if sl1.Count>5 then
|
|
|
begin
|
|
|
for j:=2 to 3 do
|
|
|
begin
|
|
|
strtemp:=strtemp+':'+sl1[j]
|
|
|
end;
|
|
|
strtemp:=strtemp+':'+Copy(sl1[4],1,34)+'+';
|
|
|
Str_shr:='+'+Copy(sl1[4],34,1);
|
|
|
for j:=5 to sl1.Count-1 do begin
|
|
|
Str_shr:=Str_shr+' '+sl1[j]
|
|
|
end;
|
|
|
end;
|
|
|
strtemp:=strtemp+#39;
|
|
|
str.Add(strtemp);
|
|
|
count:=count+1;
|
|
|
|
|
|
if (bsSkinCheckRadioBox2.Checked) and (not t_op_seae_assistant.IsEmpty) then
|
|
|
sl1.Text:=FormatEdiString(t_op_seae_assistant.fieldbyname('<27>ջ<EFBFBD><D5BB>˴<EFBFBD><CBB4><EFBFBD>').asstring)
|
|
|
else
|
|
|
sl1.Text:=FormatEdiString(aQuery.fieldbyname('<27>ջ<EFBFBD><D5BB>˴<EFBFBD><CBB4><EFBFBD>').asstring);
|
|
|
GetLengthTString(sl1,35);
|
|
|
|
|
|
strtemp:='21::'+sl1[0]+':';
|
|
|
if sl1.Count>=2 then
|
|
|
strtemp:=strtemp+sl1[1];
|
|
|
if (sl1.Count>=3) and (sl1.Count<=5) then
|
|
|
begin
|
|
|
for j:=2 to sl1.Count-1 do
|
|
|
begin
|
|
|
strtemp:=strtemp+':'+sl1[j]
|
|
|
end;
|
|
|
end;
|
|
|
if sl1.Count>5 then
|
|
|
begin
|
|
|
for j:=2 to 3 do
|
|
|
begin
|
|
|
strtemp:=strtemp+':'+sl1[j]
|
|
|
end;
|
|
|
strtemp:=strtemp+':'+Copy(sl1[4],1,33)+'++';
|
|
|
Str_con:='++'+Copy(sl1[4],33,2);
|
|
|
for j:=5 to sl1.Count-1 do begin
|
|
|
Str_con:=Str_con+' '+sl1[j]
|
|
|
end;
|
|
|
end;
|
|
|
strtemp:=strtemp+#39;
|
|
|
str.Add(strtemp);
|
|
|
count:=count+1;
|
|
|
|
|
|
if (bsSkinCheckRadioBox2.Checked) and (not t_op_seae_assistant.IsEmpty) then
|
|
|
sl1.Text:=FormatEdiString(t_op_seae_assistant.fieldbyname('֪ͨ<CDA8>˴<EFBFBD><CBB4><EFBFBD>').asstring)
|
|
|
else
|
|
|
sl1.Text:=FormatEdiString(aQuery.fieldbyname('֪ͨ<CDA8>˴<EFBFBD><CBB4><EFBFBD>').asstring);
|
|
|
GetLengthTString(sl1,35);
|
|
|
|
|
|
strtemp:='22::'+sl1[0]+':';
|
|
|
if sl1.Count>=2 then
|
|
|
strtemp:=strtemp+sl1[1];
|
|
|
if (sl1.Count>=3) and (sl1.Count<=5) then
|
|
|
begin
|
|
|
for j:=2 to sl1.Count-1 do
|
|
|
begin
|
|
|
strtemp:=strtemp+':'+sl1[j]
|
|
|
end;
|
|
|
end;
|
|
|
if sl1.Count>5 then
|
|
|
begin
|
|
|
for j:=2 to 3 do
|
|
|
begin
|
|
|
strtemp:=strtemp+':'+sl1[j]
|
|
|
end;
|
|
|
strtemp:=strtemp+':'+Copy(sl1[4],1,32)+'+++';
|
|
|
Str_not:='+++'+Copy(sl1[4],32,3);
|
|
|
for j:=5 to sl1.Count-1 do begin
|
|
|
Str_not:=Str_not+' '+sl1[j]
|
|
|
end;
|
|
|
end;
|
|
|
strtemp:=strtemp+#39;
|
|
|
str.Add(strtemp);
|
|
|
count:=count+1;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
str.Add ('41:1:'+trim(aQuery.fieldbyname('<27><><EFBFBD>䷽ʽ').asstring)+':'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)+':' // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ S/R/D/O
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(GetpkgsEdi(aQuery.fieldbyname('<27><>װ').asstring))+':'
|
|
|
+trim(aQuery.fieldbyname('<27><>װ').asstring) +':' //<2F><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ˵<D7B0><CBB5>
|
|
|
+trim(aQuery.fieldbyname('<27>ܼ<EFBFBD>').asstring) +':' //<2F><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ˵<D7B0><CBB5>
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +'::::::' // <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װƤ<D7B0><C6A4>
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':::' // <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>װ<EFBFBD><D7B0><EFBFBD><EFBFBD>
|
|
|
+#39);
|
|
|
IF trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)='R'THEN
|
|
|
BEGIN
|
|
|
str.Add ('43:' // Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD>䶳
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+'::'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+'C:'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring) +':'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring) +':'
|
|
|
+trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>').asstring) +':'
|
|
|
+'::::'
|
|
|
+#39);
|
|
|
END;
|
|
|
|
|
|
|
|
|
IF trim(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)='D'THEN
|
|
|
BEGIN
|
|
|
str.Add ('43:' // Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD>䶳
|
|
|
+trim(aQuery.fieldbyname('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+':'
|
|
|
+trim(aQuery.fieldbyname('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+'::'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+':::::'
|
|
|
+#39);
|
|
|
END;
|
|
|
|
|
|
if (bsSkinCheckRadioBox2.Checked) and (not t_op_seae_assistant.IsEmpty) then
|
|
|
sl.Text:=FormatEdiString(t_op_seae_assistant.fieldbyname('<27><>ͷ').asstring)
|
|
|
else
|
|
|
sl.Text:=FormatEdiString(aQuery.fieldbyname('<27><>ͷ').AsString);
|
|
|
GetLengthTString(sl,35);
|
|
|
M:=1;
|
|
|
for L:=0 to sl.Count-1 do begin
|
|
|
if M<=10 then begin
|
|
|
if M=1 then begin
|
|
|
s:='44:'+FormatEdiString(sl.Strings[L],0)+':';
|
|
|
end else begin
|
|
|
if M=10 then
|
|
|
s:=s+FormatEdiString(sl.Strings[L],0)
|
|
|
else
|
|
|
s:=s+FormatEdiString(sl.Strings[L],0)+':';
|
|
|
end;
|
|
|
end else begin
|
|
|
S:=S+'''';
|
|
|
Str.Add(S);
|
|
|
M:=1;
|
|
|
s:='44:'+FormatEdiString(sl.Strings[L],0)+':';
|
|
|
end;
|
|
|
M:=M+1;
|
|
|
end;
|
|
|
S:=S+'''';
|
|
|
Str.Add(S);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (bsSkinCheckRadioBox2.Checked) and (not t_op_seae_assistant.IsEmpty) then
|
|
|
sl1.Text:=FormatEdiString(t_op_seae_assistant.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)
|
|
|
else
|
|
|
sl1.Text:=FormatEdiString(aQuery.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsString);
|
|
|
GetLengthTString(sl1,45);
|
|
|
|
|
|
sl.text:='';
|
|
|
|
|
|
for L:=0 to sl1.Count-1 do begin
|
|
|
sl.Add(sl1.Strings[L]);
|
|
|
end;
|
|
|
if str_shr<>'' then begin
|
|
|
sl.Add(str_shr)
|
|
|
end;
|
|
|
if str_con<>'' then begin
|
|
|
sl.Add(str_con)
|
|
|
end;
|
|
|
if str_not<>'' then begin
|
|
|
sl.Add(str_not)
|
|
|
end;
|
|
|
|
|
|
|
|
|
M:=1;
|
|
|
for L:=0 to sl.Count-1 do begin
|
|
|
if M<=5 then begin
|
|
|
if M=1 then begin
|
|
|
s:='47:'+FormatEdiString(sl.Strings[L],0)+':';
|
|
|
end else begin
|
|
|
if M=5 then
|
|
|
s:=s+FormatEdiString(sl.Strings[L],0)
|
|
|
else
|
|
|
s:=s+FormatEdiString(sl.Strings[L],0)+':';
|
|
|
end;
|
|
|
end else begin
|
|
|
S:=S+'''';
|
|
|
Str.Add(S);
|
|
|
M:=1;
|
|
|
s:='47:'+FormatEdiString(sl.Strings[L],0)+':';
|
|
|
end;
|
|
|
M:=M+1;
|
|
|
end;
|
|
|
S:=S+'''';
|
|
|
Str.Add(S);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Count:=Count+11;
|
|
|
strRmain:='';
|
|
|
|
|
|
|
|
|
if first then
|
|
|
strRmain:=strRmain+'L:'+':'+':'+':'+':'+'N'+#39
|
|
|
else
|
|
|
strRmain:=strRmain+'L:'+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring)+':'+':'+':'+':'+'N'+#39;
|
|
|
|
|
|
strsql:='select <20><><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>,sum(<28><><EFBFBD><EFBFBD>) as <20><><EFBFBD><EFBFBD> from t_op_ctn group by <20><><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD> having <20><><EFBFBD><EFBFBD>='
|
|
|
+#39+frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring+#39;
|
|
|
try
|
|
|
rs:=Tadoquery.Create(application);
|
|
|
rs.Connection := frm_main.db;
|
|
|
rs.sql.clear;
|
|
|
rs.sql.add(strsql);
|
|
|
rs.Open;
|
|
|
rs.First;
|
|
|
while not rs.Eof do
|
|
|
begin
|
|
|
str.Add ('48:'+Trim(GetCntrEdi(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))+':'+
|
|
|
trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+
|
|
|
strRmain);
|
|
|
Count:=Count+1;
|
|
|
rs.Next;
|
|
|
end;
|
|
|
|
|
|
strsql:='select * from t_op_ctn where <20><><EFBFBD><EFBFBD>='
|
|
|
+#39+frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring+#39;
|
|
|
rs.Close;
|
|
|
rs.sql.clear;
|
|
|
rs.sql.add(strsql);
|
|
|
rs.Open;
|
|
|
if not rs.IsEmpty then begin
|
|
|
if rs.FieldByName('<27><><EFBFBD><EFBFBD>').AsInteger>0 then begin
|
|
|
rs.First;
|
|
|
while not rs.Eof do begin
|
|
|
if pos('FR',rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)>0 then begin
|
|
|
str.Add ('51:'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+Trim(GetCntrEdi(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))
|
|
|
+':NIL'+':'+trim(IntToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsInteger))+':'+trim(FloatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsFloat))+'::'
|
|
|
+trim(floatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').Asfloat))+':'+''''
|
|
|
);
|
|
|
end else begin
|
|
|
str.Add ('51:'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+Trim(GetCntrEdi(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))+':'+
|
|
|
trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+':'+trim(IntToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsInteger))+':'+trim(FloatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsFloat))+'::'
|
|
|
+trim(floatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').Asfloat))+':'+''''
|
|
|
);
|
|
|
end;
|
|
|
rs.Next;
|
|
|
end;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
rs.Close;
|
|
|
rs.Destroy;
|
|
|
except
|
|
|
on e:exception do
|
|
|
begin
|
|
|
rs.Close;
|
|
|
rs.Destroy;
|
|
|
exit;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
aQuery.Next;
|
|
|
first:=False;
|
|
|
end;
|
|
|
end;
|
|
|
finally
|
|
|
FreeAndNil(aQuery);
|
|
|
end;
|
|
|
|
|
|
str.Add('90:'
|
|
|
+ trim(Edit1.text)+':'
|
|
|
+ trim(edit3.text) +':'
|
|
|
+ trim(edit8.text)+':'
|
|
|
+ trim(edit9.text)+':'
|
|
|
+ trim(edit10.text)+':'
|
|
|
+ trim(edit11.text)+':'
|
|
|
+ trim(edit12.text)
|
|
|
+#39);
|
|
|
|
|
|
|
|
|
I:=str.Count;
|
|
|
str.Add('99:'+intToStr(i+1)+'''');
|
|
|
Result:=str;
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.GetCntrEdi(cntrsize: String):String;
|
|
|
var
|
|
|
aQuery:TADOQuery;
|
|
|
begin
|
|
|
aQuery:=CreateAdoQuery;
|
|
|
try
|
|
|
with aQuery do begin
|
|
|
Close;SQL.Clear;
|
|
|
SQL.Add('Select Edi<64><69><EFBFBD><EFBFBD> from t_code_ctn where <20><><EFBFBD><EFBFBD>='''+cntrsize+'''');
|
|
|
Open;
|
|
|
if IsEmpty then
|
|
|
Result:=''
|
|
|
else
|
|
|
Result:=FieldByName('Edi<64><69><EFBFBD><EFBFBD>').AsString;
|
|
|
end;
|
|
|
finally
|
|
|
FreeAndNil(aQuery);
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.GetpkgsEdi(pkgs: String): String;
|
|
|
var
|
|
|
aQuery:TADOQuery;
|
|
|
begin
|
|
|
aQuery:=CreateAdoQuery;
|
|
|
try
|
|
|
with aQuery do begin
|
|
|
Close;SQL.Clear;
|
|
|
SQL.Add('Select Edi<64><69><EFBFBD><EFBFBD> from t_code_package where <20><><EFBFBD><EFBFBD>='''+pkgs+'''');
|
|
|
Open;
|
|
|
if IsEmpty then
|
|
|
Result:=''
|
|
|
else
|
|
|
Result:=FieldByName('Edi<64><69><EFBFBD><EFBFBD>').AsString;
|
|
|
end;
|
|
|
finally
|
|
|
FreeAndNil(aQuery);
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.GetlineEdi(aline: String): String;
|
|
|
var
|
|
|
aQuery:TADOQuery;
|
|
|
begin
|
|
|
aQuery:=CreateAdoQuery;
|
|
|
try
|
|
|
with aQuery do begin
|
|
|
Close;SQL.Clear;
|
|
|
SQL.Add('Select Edi<64><69><EFBFBD><EFBFBD> from t_code_trade where <20><><EFBFBD><EFBFBD>='''+aline+'''');
|
|
|
Open;
|
|
|
if IsEmpty then
|
|
|
Result:=''
|
|
|
else
|
|
|
Result:=FieldByName('Edi<64><69><EFBFBD><EFBFBD>').AsString;
|
|
|
end;
|
|
|
finally
|
|
|
FreeAndNil(aQuery);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.GetvesselEdi(avessel: String): String;
|
|
|
var
|
|
|
aQuery:TADOQuery;
|
|
|
begin
|
|
|
aQuery:=CreateAdoQuery;
|
|
|
try
|
|
|
with aQuery do begin
|
|
|
Close;SQL.Clear;
|
|
|
SQL.Add('Select <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> from t_code_vessel where Ӣ<>Ĵ<EFBFBD><C4B4><EFBFBD>='''+avessel+'''');
|
|
|
Open;
|
|
|
if IsEmpty then
|
|
|
Result:=''
|
|
|
else
|
|
|
Result:=FieldByName('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').AsString;
|
|
|
end;
|
|
|
finally
|
|
|
FreeAndNil(aQuery);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
|
|
|
procedure Tfrm_op_seae_edi_hyundai.bsSkinButton3Click(Sender: TObject);
|
|
|
var
|
|
|
IdFTP1:TIdFTP;
|
|
|
str:widestring;
|
|
|
str_file:widestring;
|
|
|
ftpar,ftpname,ftppass,ftppath,ScriptPath:String;
|
|
|
StrL:TStrings;
|
|
|
inifile1:Tinifile;
|
|
|
i,i_soi:integer;
|
|
|
|
|
|
SIO,ORG,MBL,CARR,MBLNO,ETD,CORP,EMP,EMPDAE:string;
|
|
|
edi:WideString;
|
|
|
begin
|
|
|
i_soi:=0;
|
|
|
|
|
|
inifile1:=Tinifile.Create(ExtractFilePath(application.ExeName)+'main.ini');
|
|
|
inifile1.WriteString('EDI','HYUNDAISEND',edit1.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIRECIEVE',edit2.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDNAME',edit3.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIFTPSERVER',edit4.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIFTPPATH',edit5.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIFTPNAME',edit6.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIFTPPASS',edit7.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDDEPT',edit8.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDATTN',edit9.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDTEL',edit10.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDFAX',edit11.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDEMAIL',edit12.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIESINAME',edit13.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIESIPASS',edit14.text);
|
|
|
|
|
|
inifile1.WriteString('EDI','JHCZFTPSERVER',edit22.text);
|
|
|
inifile1.WriteString('EDI','JHCZFTPPATH',edit23.text);
|
|
|
inifile1.WriteString('EDI','JHCZFTPNAME',edit24.text);
|
|
|
inifile1.WriteString('EDI','JHCZFTPPASS',edit25.text);
|
|
|
inifile1.free;
|
|
|
|
|
|
ScriptPath:=ExtractFilePath(ParamStr(0))+'EDIFILE\';
|
|
|
if not DirectoryExists(ScriptPath) then
|
|
|
CreateDir(ScriptPath);
|
|
|
|
|
|
if (TbsSkinButton(Sender).Tag=100) then begin
|
|
|
ftpar:=Trim(edit22.Text);
|
|
|
if ftpar='' then begin
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FTP<54><50>ַ<EFBFBD><D6B7>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
ftpname:=Trim(edit24.Text);
|
|
|
if ftpar='' then begin
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FTP<54>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
ftppass:=Trim(edit25.Text);
|
|
|
if ftpar='' then begin
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FTP<54><50><EFBFBD>룡',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
ftppath:=Trim(edit23.Text);
|
|
|
|
|
|
end else begin
|
|
|
ftpar:=Trim(edit4.Text);
|
|
|
if ftpar='' then begin
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FTP<54><50>ַ<EFBFBD><D6B7>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
if bsSkinRadioGroup2.ItemIndex=1 then begin
|
|
|
ftpname:=Trim(edit13.Text);
|
|
|
if ftpar='' then begin
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FTP<54>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
ftppass:=Trim(edit14.Text);
|
|
|
if ftpar='' then begin
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FTP<54><50><EFBFBD>룡',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
end else begin
|
|
|
ftpname:=Trim(edit6.Text);
|
|
|
if ftpar='' then begin
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FTP<54>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
ftppass:=Trim(edit7.Text);
|
|
|
if ftpar='' then begin
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FTP<54><50><EFBFBD>룡',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
end;
|
|
|
ftppath:=Trim(edit5.Text);
|
|
|
end;
|
|
|
|
|
|
str:=ScriptPath
|
|
|
+frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring
|
|
|
+FormatDateTime('yyyy',now)
|
|
|
+FormatDateTime('mm',now)
|
|
|
+FormatDateTime('dd',now)
|
|
|
+FormatDateTime('hh',now)
|
|
|
+FormatDateTime('nn',now)
|
|
|
+FormatDateTime('ss',now)+'.txt';
|
|
|
|
|
|
str_file:=frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring
|
|
|
+FormatDateTime('yyyy',now)
|
|
|
+FormatDateTime('mm',now)
|
|
|
+FormatDateTime('dd',now)
|
|
|
+FormatDateTime('hh',now)
|
|
|
+FormatDateTime('nn',now)
|
|
|
+FormatDateTime('ss',now)+'.txt';
|
|
|
|
|
|
strL:=Tstringlist.Create;
|
|
|
try
|
|
|
if Trim(frm_op_seae.t_op_seae.fieldbyname('װ<>˷<EFBFBD>ʽ').asstring)='<27><><EFBFBD><EFBFBD>' then
|
|
|
if bsSkinRadioGroup2.ItemIndex=1 then
|
|
|
StrL:=CreateSIEdiFile
|
|
|
else
|
|
|
StrL:=CreateEdiFile
|
|
|
else if Pos('<27><>Ʊ',(frm_op_seae.t_op_seae.fieldbyname('װ<>˷<EFBFBD>ʽ').asstring))>0 then
|
|
|
if bsSkinRadioGroup2.ItemIndex=1 then
|
|
|
StrL:=CreateSIZHUEdiFile
|
|
|
else
|
|
|
StrL:=CreateZHUEdiFile
|
|
|
else begin
|
|
|
Exit;
|
|
|
end;
|
|
|
|
|
|
for i:=0 to StrL.Count-1 do begin
|
|
|
if IsZhongwen(StrL[i]) then begin
|
|
|
if MessageDlg('<27><>Ʊҵ<C6B1><D2B5><EFBFBD><EFBFBD><EFBFBD>ܺ<EFBFBD><DCBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>淶<EFBFBD>ַ<EFBFBD>,ȷʵҪ<CAB5><D2AA><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>',mtWarning,[mbYes,mbNo],0)=mrNo then
|
|
|
exit;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
|
|
|
strL.SaveToFile(str);
|
|
|
edi:=StrL.Text;
|
|
|
finally
|
|
|
FreeAndNil(StrL)
|
|
|
end;
|
|
|
|
|
|
try
|
|
|
|
|
|
IdFTP1:=TIdFTP.Create(application);
|
|
|
with idftp1 do
|
|
|
begin
|
|
|
Username:=ftpname;
|
|
|
Password:=ftppass;
|
|
|
Host:=ftpar;
|
|
|
Passive:=CheckBox1.Checked;
|
|
|
Connect;
|
|
|
end;
|
|
|
idftp1.ChangeDir(ftppath);
|
|
|
idftp1.TransferType:=ftBinary;
|
|
|
idftp1.Put(str,str_file);
|
|
|
idftp1.Disconnect;
|
|
|
|
|
|
|
|
|
showmessage('<27>ļ<EFBFBD><C4BC>ϴ<EFBFBD><CFB4>ɹ<EFBFBD><C9B9><EFBFBD>');
|
|
|
|
|
|
//
|
|
|
if bsSkinRadioGroup2.ItemIndex=0 then
|
|
|
SIO:='SO'
|
|
|
else SIO:='SI';
|
|
|
if bsSkinRadioGroup2.ItemIndex=0 then
|
|
|
ORG:='ORG'
|
|
|
else ORG:='AMEND';
|
|
|
|
|
|
MBL:='<27><><EFBFBD><EFBFBD>';
|
|
|
MBLNO:=frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring;
|
|
|
CARR:=frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>˾').asstring;
|
|
|
CORP:=frm_op_seae.t_op_seae.fieldbyname('ί<>е<EFBFBD>λ').asstring;
|
|
|
EMP:=employee;
|
|
|
EMPDAE:=FormatDateTime('YYYY-MM-DD hh:mm:ss',now);
|
|
|
ETD:=FormatDateTime('YYYY-MM-DD',frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').value);
|
|
|
Insertt_op_Edi_Log(SIO,ORG,MBL,CARR,MBLNO,ETD,CORP,EMP,EMPDAE,str,edi);
|
|
|
|
|
|
except
|
|
|
deletefile(str);
|
|
|
showmessage('<27>ļ<EFBFBD><C4BC>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
|
|
i_soi:=1;
|
|
|
end;
|
|
|
idftp1.Free;
|
|
|
if (TbsSkinButton(Sender).Tag=100) then
|
|
|
if i_soi=0 then UpdateSOIStatus(bsSkinRadioGroup2.ItemIndex,frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring);
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seae_edi_hyundai.bsSkinButton4Click(Sender: TObject);
|
|
|
begin
|
|
|
if frm_op_seae_edi_hyundai.Height=650 then
|
|
|
frm_op_seae_edi_hyundai.Height:=245
|
|
|
else frm_op_seae_edi_hyundai.Height:=650;
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seae_edi_hyundai.bsSkinButton5Click(Sender: TObject);
|
|
|
var
|
|
|
Str:TStrings;
|
|
|
i:integer;
|
|
|
begin
|
|
|
|
|
|
// if not isEditrue(frm_op_seae.t_op_seae) then exit;
|
|
|
|
|
|
try
|
|
|
Str:=CreateVgmEdiFile;
|
|
|
|
|
|
for i:=0 to Str.Count-1 do begin
|
|
|
if IsZhongwen(Str[i]) then begin
|
|
|
if MessageDlg('<27><>Ʊҵ<C6B1><D2B5><EFBFBD><EFBFBD><EFBFBD>ܺ<EFBFBD><DCBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>淶<EFBFBD>ַ<EFBFBD>,ȷʵҪ<CAB5><D2AA><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>',mtWarning,[mbYes,mbNo],0)=mrNo then
|
|
|
exit;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
|
|
|
SaveDialog1.FileName:=frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring;
|
|
|
if SaveDialog1.Execute then
|
|
|
begin
|
|
|
str.SaveToFile(SaveDialog1.FileName+'.txt');
|
|
|
showmessage('<27>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>ɳɹ<C9B3><C9B9><EFBFBD>');
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
showmessage('<27>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>');
|
|
|
exit;
|
|
|
end;
|
|
|
finally
|
|
|
FreeAndNil(Str)
|
|
|
end;
|
|
|
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.CreateVgmEdiFile:TStrings;
|
|
|
var
|
|
|
str,sl:Tstringlist;
|
|
|
i,j,Count,l,M:integer;
|
|
|
strsql,strRmain,strtemp,S,fenshu:string;
|
|
|
rs:Tadoquery;
|
|
|
wide_str,str_shr,str_con,str_not:widestring;
|
|
|
k:integer;
|
|
|
strType,SM:string;
|
|
|
strDatetime:string;
|
|
|
SenderCode,ReciverCode,shipname,shipaddr:string;
|
|
|
firstcon:boolean;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
begin
|
|
|
|
|
|
SenderCode:=trim(edit1.Text) ;
|
|
|
ReciverCode:=trim(edit2.Text) ;
|
|
|
if bsSkinRadioGroup1.ItemIndex=0 then
|
|
|
strType:='9'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=1 then
|
|
|
strType:='2'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=2 then
|
|
|
strType:='3'
|
|
|
else if bsSkinRadioGroup1.ItemIndex=3 then
|
|
|
strType:='4'
|
|
|
else strType:='9';
|
|
|
|
|
|
if Trim(Edit15.Text)<>'' then
|
|
|
IntMarksRowCount:=StrToInt(Trim(Edit15.Text))
|
|
|
else IntMarksRowCount:=9;
|
|
|
|
|
|
if Trim(Edit16.Text)<>'' then
|
|
|
IntGoodsRowCount:=StrToInt(Trim(Edit16.Text))
|
|
|
else IntGoodsRowCount:=5;
|
|
|
|
|
|
if Trim(Edit17.Text)<>'' then
|
|
|
MblLength:=StrToInt(Trim(Edit17.Text))
|
|
|
else MblLength:=2;
|
|
|
|
|
|
|
|
|
str:=Tstringlist.Create;
|
|
|
sl:=Tstringlist.Create;
|
|
|
|
|
|
str.Clear;
|
|
|
str.Add('00:IFTVGM:BOOKING:'+trim(strType)+':'+ SenderCode+':'+ReciverCode+':'+GetDatetime(datetimetostr(now),1)+#39);
|
|
|
Count:=0;
|
|
|
|
|
|
|
|
|
str.Add ('02:'+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring)+':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring) +#39);
|
|
|
|
|
|
|
|
|
str.Add('11:'
|
|
|
+ trim(GetvesselEdi(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))+':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+ trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)+#39); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӫ<EFBFBD><D3AA>
|
|
|
|
|
|
str.Add ('12:'+trim(frm_op_seae.t_op_seae.fieldbyname('װ<>۴<EFBFBD><DBB4><EFBFBD>').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('װ<><D7B0><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('װ<>۴<EFBFBD><DBB4><EFBFBD>').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('װ<><D7B0><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('ж<><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('ж<><D0B6><EFBFBD><EFBFBD>').asstring)+':'
|
|
|
+':'
|
|
|
+':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('Ŀ<>ĵش<C4B5><D8B4><EFBFBD>').asstring) +':'
|
|
|
+trim(frm_op_seae.t_op_seae.fieldbyname('Ŀ<>ĵ<EFBFBD>').asstring) +#39);
|
|
|
|
|
|
Count:=Count+4;
|
|
|
if 1=1 then
|
|
|
begin
|
|
|
strsql:='select * from t_op_ctn where <20><><EFBFBD><EFBFBD>='
|
|
|
+#39+frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring+#39;
|
|
|
try
|
|
|
rs:=Tadoquery.Create(application);
|
|
|
rs.Connection := frm_main.db;
|
|
|
rs.sql.clear;
|
|
|
rs.sql.add(strsql);
|
|
|
rs.Open; rs.First;
|
|
|
if not rs.IsEmpty then begin
|
|
|
rs.First;
|
|
|
while not rs.Eof do
|
|
|
begin
|
|
|
if (rs.fieldbyname('<27><><EFBFBD>ط<EFBFBD>ʽ').asstring<>'') or (rs.fieldbyname('<27><><EFBFBD>ط<EFBFBD>ʽ').asstring<>'<27><>') then
|
|
|
begin
|
|
|
|
|
|
if Trim(rs.fieldbyname('<27><><EFBFBD>ط<EFBFBD>ʽ').asstring)='<27>ۼ<EFBFBD>' then
|
|
|
SM:='SM2'
|
|
|
else if Trim(rs.fieldbyname('<27><><EFBFBD>ط<EFBFBD>ʽ').asstring)='<27><><EFBFBD><EFBFBD>' then
|
|
|
SM:='SM1';
|
|
|
|
|
|
str.Add ('51:'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) //2
|
|
|
+':'+Trim(GetCntrEdi(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)) //3
|
|
|
+':'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring) // 4
|
|
|
+':'+trim(IntToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsInteger)) //5
|
|
|
+':'+trim(FloatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').AsFloat)) //6
|
|
|
+'::' +trim(floatToStr(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').Asfloat)) //78
|
|
|
+'::::::' //9-14
|
|
|
+':'+rs.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring //15
|
|
|
+':'+GetDatetime(rs.fieldbyname('VGM<47><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asString,1) //16
|
|
|
+':'+SM //17
|
|
|
+':'+rs.fieldbyname('<27><><EFBFBD>صص<D8B5>').asString //18
|
|
|
+'''');
|
|
|
|
|
|
sl.Text:=FormatEdiString(frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD><CBB4><EFBFBD>').asstring);
|
|
|
shipname:='';
|
|
|
if sl.Count>=1 then
|
|
|
shipname:=Copy(sl[0],1,20);
|
|
|
shipaddr:='';
|
|
|
if sl.Count>=2 then
|
|
|
shipaddr:=sl[1];
|
|
|
|
|
|
|
|
|
str.Add ('58:'+shipname //2
|
|
|
+':'+shipaddr //3
|
|
|
+':'+rs.fieldbyname('VGM<47><4D>ϵ<EFBFBD><CFB5>').asString // 4
|
|
|
+':'+'' //5
|
|
|
+':'+rs.fieldbyname('VGM<47><4D>ϵ<EFBFBD><CFB5>ϵ<EFBFBD><CFB5>ʽ').asString //6
|
|
|
+':'+'' //7
|
|
|
+':' +rs.fieldbyname('VGMǩ<4D><C7A9>').asString //8
|
|
|
+':' +'certificate ID' //9
|
|
|
+'''');
|
|
|
|
|
|
end;
|
|
|
rs.Next;
|
|
|
end;
|
|
|
end;
|
|
|
rs.Close;
|
|
|
rs.Destroy;
|
|
|
except
|
|
|
on e:exception do
|
|
|
begin
|
|
|
rs.Close;
|
|
|
rs.Destroy;
|
|
|
exit;
|
|
|
end;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
I:=str.Count;
|
|
|
str.Add('99:'+intToStr(i+1)+'''');
|
|
|
Result:=str;
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seae_edi_hyundai.bsSkinButton6Click(Sender: TObject);
|
|
|
var
|
|
|
IdFTP1:TIdFTP;
|
|
|
str:widestring;
|
|
|
str_file:widestring;
|
|
|
ftpar,ftpname,ftppass,ftppath,ScriptPath:String;
|
|
|
StrL:TStrings;
|
|
|
i,i_soi:integer;
|
|
|
|
|
|
SIO,ORG,MBL,CARR,MBLNO,ETD,CORP,EMP,EMPDAE:string;
|
|
|
edi,PORTSTR:WideString;
|
|
|
begin
|
|
|
i_soi:=0;
|
|
|
ScriptPath:=ExtractFilePath(ParamStr(0))+'EDIFILE\';
|
|
|
if not DirectoryExists(ScriptPath) then
|
|
|
CreateDir(ScriptPath);
|
|
|
|
|
|
ftpar:=Trim(edit18.Text);
|
|
|
if ftpar='' then begin
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FTP<54><50>ַ<EFBFBD><D6B7>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
|
|
|
ftpname:=Trim(edit20.Text);
|
|
|
if ftpar='' then begin
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FTP<54>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
ftppass:=Trim(edit21.Text);
|
|
|
if ftpar='' then begin
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FTP<54><50><EFBFBD>룡',mtWarning,[mbOk],0);
|
|
|
exit;
|
|
|
end;
|
|
|
ftppath:=Trim(edit19.Text);
|
|
|
|
|
|
str:=ScriptPath
|
|
|
+frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring
|
|
|
+FormatDateTime('yyyy',now)
|
|
|
+FormatDateTime('mm',now)
|
|
|
+FormatDateTime('dd',now)
|
|
|
+FormatDateTime('hh',now)
|
|
|
+FormatDateTime('nn',now)
|
|
|
+FormatDateTime('ss',now)+'.txt';
|
|
|
|
|
|
str_file:=frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring
|
|
|
+FormatDateTime('yyyy',now)
|
|
|
+FormatDateTime('mm',now)
|
|
|
+FormatDateTime('dd',now)
|
|
|
+FormatDateTime('hh',now)
|
|
|
+FormatDateTime('nn',now)
|
|
|
+FormatDateTime('ss',now)+'.txt';
|
|
|
|
|
|
strL:=Tstringlist.Create;
|
|
|
try
|
|
|
StrL:=CreateVGMEdiFile;
|
|
|
|
|
|
for i:=0 to StrL.Count-1 do begin
|
|
|
if IsZhongwen(StrL[i]) then begin
|
|
|
if MessageDlg('<27><>Ʊҵ<C6B1><D2B5><EFBFBD><EFBFBD><EFBFBD>ܺ<EFBFBD><DCBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>淶<EFBFBD>ַ<EFBFBD>,ȷʵҪ<CAB5><D2AA><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>',mtWarning,[mbYes,mbNo],0)=mrNo then
|
|
|
exit;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
|
|
|
strL.SaveToFile(str);
|
|
|
edi:=StrL.Text;
|
|
|
finally
|
|
|
FreeAndNil(StrL)
|
|
|
end;
|
|
|
|
|
|
PORTSTR:=Edit26.Text;
|
|
|
if (Trim(PORTSTR)='') then PORTSTR:='21';
|
|
|
|
|
|
try
|
|
|
|
|
|
IdFTP1:=TIdFTP.Create(application);
|
|
|
with idftp1 do
|
|
|
begin
|
|
|
Username:=ftpname;
|
|
|
Password:=ftppass;
|
|
|
Host:=ftpar;
|
|
|
Passive:=True;
|
|
|
port:=StrToInt(PORTSTR);
|
|
|
Connect;
|
|
|
end;
|
|
|
idftp1.ChangeDir(ftppath);
|
|
|
idftp1.TransferType:=ftBinary;
|
|
|
idftp1.Put(str,str_file);
|
|
|
idftp1.Disconnect;
|
|
|
|
|
|
|
|
|
showmessage('<27>ļ<EFBFBD><C4BC>ϴ<EFBFBD><CFB4>ɹ<EFBFBD><C9B9><EFBFBD>');
|
|
|
|
|
|
//
|
|
|
if bsSkinRadioGroup2.ItemIndex=0 then
|
|
|
SIO:='SO'
|
|
|
else SIO:='SI';
|
|
|
SIO:='VGM';
|
|
|
|
|
|
if bsSkinRadioGroup2.ItemIndex=0 then
|
|
|
ORG:='ORG'
|
|
|
else ORG:='AMEND';
|
|
|
|
|
|
MBL:='<27><><EFBFBD><EFBFBD>';
|
|
|
MBLNO:=frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring;
|
|
|
CARR:=frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>˾').asstring;
|
|
|
CORP:=frm_op_seae.t_op_seae.fieldbyname('ί<>е<EFBFBD>λ').asstring;
|
|
|
EMP:=employee;
|
|
|
EMPDAE:=FormatDateTime('YYYY-MM-DD hh:mm:ss',now);
|
|
|
ETD:=FormatDateTime('YYYY-MM-DD',frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').value);
|
|
|
Insertt_op_Edi_Log(SIO,ORG,MBL,CARR,MBLNO,ETD,CORP,EMP,EMPDAE,str,edi);
|
|
|
|
|
|
except
|
|
|
deletefile(str);
|
|
|
showmessage('<27>ļ<EFBFBD><C4BC>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
|
|
i_soi:=1;
|
|
|
end;
|
|
|
idftp1.Free;
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seae_edi_hyundai.FormClose(Sender: TObject;
|
|
|
var Action: TCloseAction);
|
|
|
var
|
|
|
inifile1:Tinifile;
|
|
|
begin
|
|
|
inifile1:=Tinifile.Create(ExtractFilePath(application.ExeName)+'main.ini');
|
|
|
inifile1.WriteString('EDI','HYUNDAISEND',edit1.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIRECIEVE',edit2.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDNAME',edit3.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIFTPSERVER',edit4.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIFTPPATH',edit5.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIFTPNAME',edit6.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIFTPPASS',edit7.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDDEPT',edit8.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDATTN',edit9.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDTEL',edit10.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDFAX',edit11.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAISENDEMAIL',edit12.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIESINAME',edit13.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIESIPASS',edit14.text);
|
|
|
|
|
|
inifile1.WriteString('EDI','HYUNDAIVGMFTPSERVER',edit18.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIVGMFTPPATH',edit19.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIVGMFTPUSERNAME',edit20.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIVGMFTPPASSWORD',edit21.text);
|
|
|
inifile1.WriteString('EDI','HYUNDAIVGMFTPPORT',edit26.text);
|
|
|
|
|
|
inifile1.WriteString('EDI','JHCZFTPSERVER',edit22.text);
|
|
|
inifile1.WriteString('EDI','JHCZFTPPATH',edit23.text);
|
|
|
inifile1.WriteString('EDI','JHCZFTPNAME',edit24.text);
|
|
|
inifile1.WriteString('EDI','JHCZFTPPASS',edit25.text);
|
|
|
|
|
|
|
|
|
|
|
|
inifile1.free;
|
|
|
|
|
|
end;
|
|
|
|
|
|
function Tfrm_op_seae_edi_hyundai.GetCtnGoods(bsno: String): String;
|
|
|
var at_op_ctn,at_op_ctndetail :TADOQuery;
|
|
|
ctnlist:TStringList;
|
|
|
b_ctncount:Boolean;
|
|
|
begin
|
|
|
result:='';
|
|
|
|
|
|
at_op_ctn:=CreateAdoQuery;
|
|
|
at_op_ctndetail:=CreateAdoQuery;
|
|
|
ctnlist:=TStringList.Create;
|
|
|
ctnlist.Clear;
|
|
|
with at_op_ctn do
|
|
|
begin
|
|
|
Close;SQL.Clear;
|
|
|
SQL.Add('select ctn_id from t_op_ctn');
|
|
|
SQL.Add('where <20><><EFBFBD><EFBFBD>=:bsno');
|
|
|
Parameters.ParamByName('bsno').Value:=bsno;
|
|
|
open;First;
|
|
|
while not eof do
|
|
|
begin
|
|
|
ctnlist.Add(FieldByName('ctn_id').AsString);
|
|
|
Next;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
if Trim(ctnlist.CommaText)<>'' then
|
|
|
with at_op_ctndetail do
|
|
|
begin
|
|
|
Close;SQL.Clear;
|
|
|
SQL.Add('select count(ctn_id) ctn_id from t_op_ctn_detail');
|
|
|
SQL.Add('where ctn_id in ('+ctnlist.CommaText+')');
|
|
|
Open;
|
|
|
if FieldByName('ctn_id').AsInteger>0 then
|
|
|
b_ctncount:=True;
|
|
|
end;
|
|
|
|
|
|
if b_ctncount then
|
|
|
begin
|
|
|
with at_op_ctndetail do
|
|
|
begin
|
|
|
Close;SQL.Clear;
|
|
|
SQL.Add('select ctn_id,sum(<28><><EFBFBD><EFBFBD>)<29><><EFBFBD><EFBFBD>,sum(<28><><EFBFBD><EFBFBD>) <20><><EFBFBD><EFBFBD>,sum(<28><><EFBFBD><EFBFBD>) <20><><EFBFBD><EFBFBD> from t_op_ctn_detail');
|
|
|
SQL.Add('where ctn_id=:ctn_id');
|
|
|
SQL.Add('Group by ctn_id');
|
|
|
end;
|
|
|
|
|
|
with at_op_ctn do
|
|
|
begin
|
|
|
Close;SQL.Clear;
|
|
|
SQL.Add('select ctn_id,<2C><><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD> from t_op_ctn');
|
|
|
SQL.Add('where <20><><EFBFBD><EFBFBD>=:bsno');
|
|
|
Parameters.ParamByName('bsno').Value:=bsno;
|
|
|
open;First;
|
|
|
while not eof do
|
|
|
begin
|
|
|
at_op_ctndetail.Close;
|
|
|
at_op_ctndetail.Parameters.ParamByName('ctn_id').Value:=FieldByName('ctn_id').AsInteger;
|
|
|
at_op_ctndetail.Open;
|
|
|
if at_op_ctndetail.FieldByName('<27><><EFBFBD><EFBFBD>').AsInteger<>FieldByName('<27><><EFBFBD><EFBFBD>').AsInteger then
|
|
|
begin
|
|
|
if Trim(result)='' then
|
|
|
result:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD>:'+at_op_ctndetail.FieldByName('<27><><EFBFBD><EFBFBD>').AsString+'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܼ<EFBFBD><DCBC><EFBFBD>:'+FieldByName('<27><><EFBFBD><EFBFBD>').AsString
|
|
|
else result:=result+#13#10+'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD>:'+at_op_ctndetail.FieldByName('<27><><EFBFBD><EFBFBD>').AsString+'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܼ<EFBFBD><DCBC><EFBFBD>:'+FieldByName('<27><><EFBFBD><EFBFBD>').AsString;
|
|
|
end;
|
|
|
if at_op_ctndetail.FieldByName('<27><><EFBFBD><EFBFBD>').AsFloat<>FieldByName('<27><><EFBFBD><EFBFBD>').AsFloat then
|
|
|
begin
|
|
|
if Trim(result)='' then
|
|
|
result:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD>:'+at_op_ctndetail.FieldByName('<27><><EFBFBD><EFBFBD>').AsString+'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:'+FieldByName('<27><><EFBFBD><EFBFBD>').AsString
|
|
|
else result:=result+#13#10+'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD>:'+at_op_ctndetail.FieldByName('<27><><EFBFBD><EFBFBD>').AsString+'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:'+FieldByName('<27><><EFBFBD><EFBFBD>').AsString;
|
|
|
end;
|
|
|
|
|
|
if at_op_ctndetail.FieldByName('<27><><EFBFBD><EFBFBD>').AsFloat<>FieldByName('<27><><EFBFBD><EFBFBD>').AsFloat then
|
|
|
begin
|
|
|
if Trim(result)='' then
|
|
|
result:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD>:'+at_op_ctndetail.FieldByName('<27><><EFBFBD><EFBFBD>').AsString+'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܳ<EFBFBD><DCB3><EFBFBD>:'+FieldByName('<27><><EFBFBD><EFBFBD>').AsString
|
|
|
else result:=result+#13#10+'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD>:'+at_op_ctndetail.FieldByName('<27><><EFBFBD><EFBFBD>').AsString+'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܳ<EFBFBD><DCB3><EFBFBD>:'+FieldByName('<27><><EFBFBD><EFBFBD>').AsString;
|
|
|
end;
|
|
|
Next;
|
|
|
end;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
try
|
|
|
finally
|
|
|
at_op_ctn.Free;
|
|
|
at_op_ctndetail.Free;
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
end.
|