|
|
|
|
unit u_op_seae_edi_msc;
|
|
|
|
|
|
|
|
|
|
interface
|
|
|
|
|
|
|
|
|
|
uses
|
|
|
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,IdFTP,IdFTPCommon,
|
|
|
|
|
Dialogs, BusinessSkinForm, StdCtrls, bsSkinCtrls,inifiles, DB, ADODB;
|
|
|
|
|
|
|
|
|
|
type
|
|
|
|
|
Tfrm_op_seae_edi_msc = 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;
|
|
|
|
|
t_op_seae_assistant: TADOQuery;
|
|
|
|
|
procedure bsSkinButton2Click(Sender: TObject);
|
|
|
|
|
procedure FormShow(Sender: TObject);
|
|
|
|
|
procedure bsSkinButton1Click(Sender: TObject);
|
|
|
|
|
procedure bsSkinButton3Click(Sender: TObject);
|
|
|
|
|
procedure bsSkinButton4Click(Sender: TObject);
|
|
|
|
|
private
|
|
|
|
|
function isEditrue(DataSet:TDataSet): boolean; //<2F>жϱ<D0B6><CFB1><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
function GetStrNum(str:String):integer;//<2F>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
|
|
|
|
|
function FormatListString(Old:TStrings;mCount,Strlength:integer):String;//<2F><><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>
|
|
|
|
|
function FormatEdiString(str:String;Strlength:integer=0):String;//<2F><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD> :
|
|
|
|
|
function CreateEdiFile:TStrings;//<2F><><EFBFBD>ձ<EFBFBD><D5B1><EFBFBD>
|
|
|
|
|
function GetLengthword(var s: String; l: Integer;str:String): String;//<2F><><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>ȡ<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>
|
|
|
|
|
procedure GetLengthTString(var sl:TStringList;l:integer);//<2F><><EFBFBD>ݳ<EFBFBD><DDB3>ȸ<EFBFBD>ʽ<EFBFBD><CABD> tstringlist
|
|
|
|
|
function IsZhongwen(Str:String):Boolean;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD>˫<EFBFBD>ֽ<EFBFBD><D6BD>ַ<EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{ Private declarations }
|
|
|
|
|
public
|
|
|
|
|
{ Public declarations }
|
|
|
|
|
function GetCorpsString(recordno,recordno1,fldName:string;aDataset:TDataset):String;
|
|
|
|
|
function GetvesselEdi(avessel: String): String;
|
|
|
|
|
function Gett_code_trade(atrade: String): String;
|
|
|
|
|
function GetPkgCode(Pkg:String):String;
|
|
|
|
|
function GetMlbCount(aDataset:TDataset;fldName:string): String;
|
|
|
|
|
function Record00(strType,SenderCode,ReciverCode:string):String;
|
|
|
|
|
function Record10(aDataset:TDataset):String;
|
|
|
|
|
function Record12(aDataset:TDataset):String;
|
|
|
|
|
function RecordBO(aDataset:TDataset):String;
|
|
|
|
|
function Record13(aDataset:TDataset):String;
|
|
|
|
|
function Record16_17_18(recordno,recordno1,fldName:string;aDataset:TDataset):String;
|
|
|
|
|
function RecordRB(strLen:integer;RecordNo,FldName:string;aDataset:TDataset):TStringlist;
|
|
|
|
|
function Record21(aDataset:TDataset):String;
|
|
|
|
|
function Record41(aDataset:TDataset):String;
|
|
|
|
|
function Record43(aDataset:TDataset):String;
|
|
|
|
|
function Record44_47(strLen,LoopCount:integer;RecordNo,FldName:string;aDataset:TDataset):TStringlist;
|
|
|
|
|
function Record51(aDataset:TDataset):TStringlist;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
var
|
|
|
|
|
frm_op_seae_edi_msc: Tfrm_op_seae_edi_msc;
|
|
|
|
|
|
|
|
|
|
implementation
|
|
|
|
|
|
|
|
|
|
uses u_op_seae, u_main, my_sys_function, u_data_share;
|
|
|
|
|
|
|
|
|
|
{$R *.dfm}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.GetMlbCount(aDataset:TDataset;fldName:string): String;
|
|
|
|
|
begin
|
|
|
|
|
Result:='3';
|
|
|
|
|
if aDataset.fieldbyname(fldName).asstring='ONE' then
|
|
|
|
|
Result:='1'
|
|
|
|
|
else if aDataset.fieldbyname(fldName).asstring='TWO' then
|
|
|
|
|
Result:='2'
|
|
|
|
|
else if aDataset.fieldbyname(fldName).asstring='THREE' then
|
|
|
|
|
Result:='3'
|
|
|
|
|
else if aDataset.fieldbyname(fldName).asstring='FOUR' then
|
|
|
|
|
Result:='4'
|
|
|
|
|
else Result:='3';
|
|
|
|
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.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;
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.Gett_code_trade(atrade: String): String;
|
|
|
|
|
var
|
|
|
|
|
aQuery:TADOQuery;
|
|
|
|
|
begin
|
|
|
|
|
aQuery:=CreateAdoQuery;
|
|
|
|
|
try
|
|
|
|
|
with aQuery do begin
|
|
|
|
|
Close;SQL.Clear;
|
|
|
|
|
SQL.Add('Select EDI<44><49><EFBFBD><EFBFBD> from t_code_trade where <20><><EFBFBD><EFBFBD>='''+atrade+'''');
|
|
|
|
|
Open;
|
|
|
|
|
if IsEmpty then
|
|
|
|
|
Result:=''
|
|
|
|
|
else
|
|
|
|
|
Result:=FieldByName('EDI<44><49><EFBFBD><EFBFBD>').AsString;
|
|
|
|
|
end;
|
|
|
|
|
finally
|
|
|
|
|
FreeAndNil(aQuery);
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.GetPkgCode(Pkg:String): String;
|
|
|
|
|
var
|
|
|
|
|
aQuery:TADOQuery;
|
|
|
|
|
begin
|
|
|
|
|
aQuery:=CreateAdoQuery;
|
|
|
|
|
try
|
|
|
|
|
with aQuery do begin
|
|
|
|
|
Close;SQL.Clear;
|
|
|
|
|
SQL.Add('Select EDI<44><49><EFBFBD><EFBFBD> from t_code_package where <20><><EFBFBD><EFBFBD>='''+pkg+'''');
|
|
|
|
|
Open;
|
|
|
|
|
if not IsEmpty then
|
|
|
|
|
Result:=Trim(FieldByName('EDI<44><49><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
else
|
|
|
|
|
Result:='';
|
|
|
|
|
end;
|
|
|
|
|
finally
|
|
|
|
|
FreeAndNil(aQuery);
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.GetCorpsString(recordno,recordno1,fldName:string;aDataset:TDataset):String;
|
|
|
|
|
var
|
|
|
|
|
TempStr:TStringList;
|
|
|
|
|
begin
|
|
|
|
|
TempStr:=TStringList.Create;
|
|
|
|
|
try
|
|
|
|
|
TempStr.Text:=FormatEdiString(aDataset.fieldbyname(fldName).AsString);
|
|
|
|
|
GetLengthTString(TempStr,100);
|
|
|
|
|
Result:=recordno+':';
|
|
|
|
|
Result:=Result+':';
|
|
|
|
|
if TempStr.Count-1>=0 then
|
|
|
|
|
Result:=Result+':'+TempStr[0]
|
|
|
|
|
else Result:=Result+':';
|
|
|
|
|
|
|
|
|
|
if TempStr.Count-1>=2 then
|
|
|
|
|
Result:=Result+':'+TempStr[2]
|
|
|
|
|
else Result:=Result+':';
|
|
|
|
|
|
|
|
|
|
if TempStr.Count-1>=3 then
|
|
|
|
|
Result:=Result+':'+TempStr[3]
|
|
|
|
|
else Result:=Result+':';
|
|
|
|
|
|
|
|
|
|
Result:=Result+'::::::::::::';
|
|
|
|
|
|
|
|
|
|
if TempStr.Count-1>=0 then
|
|
|
|
|
Result:=Result+':'+TempStr[0]
|
|
|
|
|
else Result:=Result+':';
|
|
|
|
|
|
|
|
|
|
if TempStr.Count-1>=2 then
|
|
|
|
|
Result:=Result+':'+TempStr[2]
|
|
|
|
|
else Result:=Result+':';
|
|
|
|
|
|
|
|
|
|
if TempStr.Count-1>=3 then
|
|
|
|
|
Result:=Result+' '+TempStr[3];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Result:=Result+#13#10;
|
|
|
|
|
|
|
|
|
|
if TempStr.Count-1>=1 then
|
|
|
|
|
Result:=Result+recordno1+':'+TempStr[1]+'/AD'
|
|
|
|
|
else Result:=Result+':'+'/AD';
|
|
|
|
|
|
|
|
|
|
if TempStr.Count-1>=1 then
|
|
|
|
|
Result:=Result+':'+TempStr[1]
|
|
|
|
|
else Result:=Result+':';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Result:=Result+FormatListString(TempStr,6,35)+'''';
|
|
|
|
|
finally
|
|
|
|
|
FreeAndNil(TempStr);
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.Record00(strType,SenderCode,ReciverCode:string):String;
|
|
|
|
|
var SOI:string;
|
|
|
|
|
begin
|
|
|
|
|
case bsSkinRadioGroup2.ItemIndex of
|
|
|
|
|
0:SOI:='BKGAGTMSC';
|
|
|
|
|
1:SOI:='BOLAGTMSC';
|
|
|
|
|
end;
|
|
|
|
|
result:='00:MHEDI6'+':'+SOI+':20'+':'+ SenderCode+':'+GetDatetime(datetimetostr(now),3)+':::';
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.Record10(aDataset:TDataset):String;
|
|
|
|
|
begin
|
|
|
|
|
result:='10:'+':'+GetvesselEdi(trim(aDataset.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)) //
|
|
|
|
|
+'::'
|
|
|
|
|
+':'+ trim(aDataset.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':'+ GetvesselEdi(trim(aDataset.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring))
|
|
|
|
|
+':::::::';
|
|
|
|
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.Record12(aDataset:TDataset):String;
|
|
|
|
|
var strPAY:string;
|
|
|
|
|
begin
|
|
|
|
|
|
|
|
|
|
if frm_data_share.t_code_free.locate('<27><><EFBFBD>ѷ<EFBFBD>ʽ',frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD>ѷ<EFBFBD>ʽ').asstring,[]) then
|
|
|
|
|
begin
|
|
|
|
|
strPAY:=frm_data_share.t_code_free.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
result:='12'+':'+trim(aDataset.fieldbyname('<27><><EFBFBD>ᵥ<EFBFBD><E1B5A5>').asstring) //
|
|
|
|
|
+':N'
|
|
|
|
|
+':'
|
|
|
|
|
+':'+trim(aDataset.fieldbyname('Ŀ<>ĵ<EFBFBD>').asstring)
|
|
|
|
|
+':'+trim(aDataset.fieldbyname('Ŀ<>ĵش<C4B5><D8B4><EFBFBD>').asstring)
|
|
|
|
|
+':'+trim(aDataset.fieldbyname('Ŀ<>ĵ<EFBFBD>').asstring)
|
|
|
|
|
+':'+ trim(aDataset.fieldbyname('װ<>۴<EFBFBD><DBB4><EFBFBD>').asstring)
|
|
|
|
|
+':'+ trim(aDataset.fieldbyname('װ<><D7B0><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':'+ trim(aDataset.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':'+ strPAY
|
|
|
|
|
+':'
|
|
|
|
|
+':N'
|
|
|
|
|
+':'+GetMlbCount(aDataset,'<27>ᵥ<EFBFBD><E1B5A5><EFBFBD><EFBFBD>')
|
|
|
|
|
+':'+GetMlbCount(aDataset,'<27><><EFBFBD><EFBFBD><EFBFBD>ᵥ<EFBFBD><E1B5A5><EFBFBD><EFBFBD>')
|
|
|
|
|
+':'
|
|
|
|
|
+':'
|
|
|
|
|
+':'
|
|
|
|
|
+':'+trim(aDataset.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':'+trim(aDataset.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring);
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.RecordBO(aDataset:TDataset):String;
|
|
|
|
|
begin
|
|
|
|
|
result:='BO'+':' //
|
|
|
|
|
+':C'
|
|
|
|
|
+':'
|
|
|
|
|
+':'
|
|
|
|
|
+':'
|
|
|
|
|
+':'+trim(aDataset.fieldbyname('<27>˷<EFBFBD>Э<EFBFBD><D0AD><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':'
|
|
|
|
|
+':'
|
|
|
|
|
+':'
|
|
|
|
|
+':'
|
|
|
|
|
+':'
|
|
|
|
|
+':'
|
|
|
|
|
+':'
|
|
|
|
|
+':S'
|
|
|
|
|
+':'
|
|
|
|
|
+':';
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.Record13(aDataset:TDataset):String;
|
|
|
|
|
begin
|
|
|
|
|
result:='13'+':'+trim(aDataset.fieldbyname('ж<><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':'+ trim(aDataset.fieldbyname('ж<><D0B6><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':::::'
|
|
|
|
|
+':::::';
|
|
|
|
|
|
|
|
|
|
end;
|
|
|
|
|
function Tfrm_op_seae_edi_msc.Record16_17_18(recordno,recordno1,fldName:string;aDataset:TDataset):String;
|
|
|
|
|
begin
|
|
|
|
|
result:=GetCorpsString(recordno,recordno1,fldName,aDataset);
|
|
|
|
|
end;
|
|
|
|
|
function Tfrm_op_seae_edi_msc.Record21(aDataset:TDataset):String;
|
|
|
|
|
begin
|
|
|
|
|
result:='21:::COC:::::::'
|
|
|
|
|
+#39;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.Record41(aDataset:TDataset):String;
|
|
|
|
|
begin
|
|
|
|
|
result:='41::'
|
|
|
|
|
+':'+ trim(aDataset.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':'+ GetPkgCode(trim(aDataset.fieldbyname('<27><>װ').asstring))
|
|
|
|
|
+':'
|
|
|
|
|
+':'
|
|
|
|
|
+':'+ trim(aDataset.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':'+ trim(aDataset.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':'
|
|
|
|
|
+':'+ trim(aDataset.fieldbyname('<27><><EFBFBD>䷽ʽ').asstring);
|
|
|
|
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.Record43(aDataset:TDataset):String;
|
|
|
|
|
begin
|
|
|
|
|
result:='43:';
|
|
|
|
|
if trim(aDataset.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)='D' THEN
|
|
|
|
|
begin
|
|
|
|
|
result:=result
|
|
|
|
|
+':'+trim(aDataset.fieldbyname('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':'
|
|
|
|
|
+':'+trim(aDataset.fieldbyname('Σ<><CEA3>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+'::::::'
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
begin
|
|
|
|
|
result:=result+':::::::::'
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
if trim(aDataset.fieldbyname('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ').asstring)='R' then
|
|
|
|
|
begin
|
|
|
|
|
result:=result+':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
|
|
|
|
|
else
|
|
|
|
|
begin
|
|
|
|
|
result:=result+'::::'+#39;
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.RecordRB(strLen:integer;RecordNo,FldName:string;aDataset:TDataset):TStringlist;
|
|
|
|
|
var sl,sl1:Tstringlist;
|
|
|
|
|
m,l:integer;
|
|
|
|
|
s:string;
|
|
|
|
|
begin
|
|
|
|
|
result:=Tstringlist.Create;
|
|
|
|
|
sl:=Tstringlist.Create;
|
|
|
|
|
sl1:=Tstringlist.Create;
|
|
|
|
|
try
|
|
|
|
|
sl1.Text:=FormatEdiString(aDataset.fieldbyname(FldName).AsString);
|
|
|
|
|
GetLengthTString(sl1,strLen);
|
|
|
|
|
sl.text:='';
|
|
|
|
|
for L:=0 to sl1.Count-1 do
|
|
|
|
|
begin
|
|
|
|
|
result.Add(sl1.Strings[L]);
|
|
|
|
|
end;
|
|
|
|
|
finally
|
|
|
|
|
sl.Free;
|
|
|
|
|
sl1.Free;
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.Record44_47(strLen,LoopCount:integer;RecordNo,FldName:string;aDataset:TDataset):TStringlist;
|
|
|
|
|
var sl,sl1:Tstringlist;
|
|
|
|
|
m,l:integer;
|
|
|
|
|
s:string;
|
|
|
|
|
begin
|
|
|
|
|
result:=Tstringlist.Create;
|
|
|
|
|
sl:=Tstringlist.Create;
|
|
|
|
|
sl1:=Tstringlist.Create;
|
|
|
|
|
try
|
|
|
|
|
sl1.Text:=FormatEdiString(aDataset.fieldbyname(FldName).AsString);
|
|
|
|
|
GetLengthTString(sl1,strLen);
|
|
|
|
|
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<=LoopCount then begin
|
|
|
|
|
if M=1 then begin
|
|
|
|
|
s:=RecordNo+':'+sl.Strings[L]+':';
|
|
|
|
|
end else begin
|
|
|
|
|
if M=LoopCount then
|
|
|
|
|
s:=s+sl.Strings[L]
|
|
|
|
|
else
|
|
|
|
|
s:=s+sl.Strings[L]+':';
|
|
|
|
|
end;
|
|
|
|
|
end else begin
|
|
|
|
|
S:=S+'''';
|
|
|
|
|
result.Add(S);
|
|
|
|
|
M:=1;
|
|
|
|
|
s:=RecordNo+':'+sl.Strings[L]+':';
|
|
|
|
|
end;
|
|
|
|
|
M:=M+1;
|
|
|
|
|
end;
|
|
|
|
|
S:=S+'''';
|
|
|
|
|
result.Add(S);
|
|
|
|
|
finally
|
|
|
|
|
sl.Free;
|
|
|
|
|
sl1.Free;
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.Record51(aDataset:TDataset):TStringlist;
|
|
|
|
|
var strsql:string;
|
|
|
|
|
rs:TADOQuery;
|
|
|
|
|
begin
|
|
|
|
|
result:=TStringlist.Create;
|
|
|
|
|
strsql:='select <20><><EFBFBD><EFBFBD>,<2C>ߴ<EFBFBD>,<2C><><EFBFBD><EFBFBD>,sum(<28><><EFBFBD><EFBFBD>) as <20><><EFBFBD><EFBFBD> from t_op_ctn group by <20><><EFBFBD><EFBFBD>,<2C>ߴ<EFBFBD>,<2C><><EFBFBD><EFBFBD> having <20><><EFBFBD><EFBFBD>='
|
|
|
|
|
+#39+aDataset.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring+#39;
|
|
|
|
|
try
|
|
|
|
|
rs:=TADOQuery.Create(application);
|
|
|
|
|
rs.Connection := frm_main.db;
|
|
|
|
|
with rs do
|
|
|
|
|
begin
|
|
|
|
|
Close;sql.clear;
|
|
|
|
|
SQL.Add('SELECT t_op_ctn.<2E><><EFBFBD><EFBFBD>,t_op_ctn.<2E><><EFBFBD><EFBFBD>, t_code_ctn.EDI<44><49><EFBFBD><EFBFBD>,t_op_ctn.<2E><>װ');
|
|
|
|
|
SQL.Add(',t_op_ctn.<2E>ߴ<EFBFBD>,t_op_ctn.<2E><><EFBFBD><EFBFBD>,t_op_ctn.<2E><><EFBFBD><EFBFBD>,t_op_ctn.<2E><><EFBFBD><EFBFBD>,t_op_ctn.<2E><><EFBFBD><EFBFBD>,t_op_ctn.<2E><><EFBFBD><EFBFBD>,t_op_ctn.<2E><><EFBFBD><EFBFBD>,t_op_ctn.<2E><><EFBFBD><EFBFBD>,t_op_ctn.Ʒ<><C6B7>');
|
|
|
|
|
SQL.Add('FROM t_op_ctn');
|
|
|
|
|
SQL.Add('Left JOIN t_code_ctn ON t_op_ctn.<2E><><EFBFBD><EFBFBD> = t_code_ctn.<2E><><EFBFBD><EFBFBD>');
|
|
|
|
|
SQL.Add('WHERE t_op_ctn.<2E><><EFBFBD><EFBFBD>=:<3A><><EFBFBD><EFBFBD>');
|
|
|
|
|
t_op_ctn.Parameters.ParamByName('<27><><EFBFBD><EFBFBD>').Value:=frm_op_seae.t_op_seae.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring;
|
|
|
|
|
Open;First;
|
|
|
|
|
end;
|
|
|
|
|
while not rs.Eof do
|
|
|
|
|
begin
|
|
|
|
|
result.Add ('51:'
|
|
|
|
|
+':'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':'
|
|
|
|
|
+':'+Trim(rs.fieldbyname('<27>ߴ<EFBFBD>').asstring)+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':F'
|
|
|
|
|
+'::'
|
|
|
|
|
+':N'
|
|
|
|
|
+':N'
|
|
|
|
|
+':N'
|
|
|
|
|
+':'
|
|
|
|
|
+':N'
|
|
|
|
|
+':N'
|
|
|
|
|
+':N'
|
|
|
|
|
+':'+trim(rs.fieldbyname('EDI<44><49><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':N'
|
|
|
|
|
+':'+trim(rs.fieldbyname('<27><><EFBFBD><EFBFBD>').asstring)
|
|
|
|
|
+':N');
|
|
|
|
|
rs.Next;
|
|
|
|
|
end;
|
|
|
|
|
finally
|
|
|
|
|
rs.Close;
|
|
|
|
|
rs.Destroy;
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.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
|
|
|
|
|
Result:=True;
|
|
|
|
|
Exit;
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.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_msc.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_msc.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 then
|
|
|
|
|
begin
|
|
|
|
|
strC:=strC+'CHR(3900)';
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
if (str[i]=':') then
|
|
|
|
|
begin
|
|
|
|
|
strC:=strC+'CHR(5800)';
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
begin
|
|
|
|
|
strC:=strC+str[i];
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
result:=strC;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.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_msc.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_msc.bsSkinButton2Click(Sender: TObject);
|
|
|
|
|
begin
|
|
|
|
|
close;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
procedure Tfrm_op_seae_edi_msc.FormShow(Sender: TObject);
|
|
|
|
|
var
|
|
|
|
|
inifile1:Tinifile;
|
|
|
|
|
begin
|
|
|
|
|
inifile1:=Tinifile.Create(ExtractFilePath(application.ExeName)+'main.ini');
|
|
|
|
|
edit1.text:=inifile1.ReadString('EDI','MSCSEND','015');
|
|
|
|
|
edit2.text:=inifile1.ReadString('EDI','MSCRECIEVE','123456');
|
|
|
|
|
edit3.text:=inifile1.ReadString('EDI','MSCSENDNAME','');
|
|
|
|
|
edit4.text:=inifile1.ReadString('EDI','MSCFTPSERVER',get_parameters_value(77,''));
|
|
|
|
|
edit5.text:=inifile1.ReadString('EDI','MSCFTPPATH',get_parameters_value(78,'/'));
|
|
|
|
|
edit6.text:=inifile1.ReadString('EDI','MSCFTPNAME',get_parameters_value(79,''));
|
|
|
|
|
edit7.text:=inifile1.ReadString('EDI','MSCFTPPASS',get_parameters_value(80,''));
|
|
|
|
|
inifile1.free;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
procedure Tfrm_op_seae_edi_msc.bsSkinButton1Click(Sender: TObject);
|
|
|
|
|
var
|
|
|
|
|
Str:TStrings;
|
|
|
|
|
inifile1:Tinifile;
|
|
|
|
|
i:integer;
|
|
|
|
|
begin
|
|
|
|
|
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:=CreateEdiFile
|
|
|
|
|
else
|
|
|
|
|
Str:=CreateEdiFile
|
|
|
|
|
else if Pos('<27><>Ʊ',(frm_op_seae.t_op_seae.fieldbyname('װ<>˷<EFBFBD>ʽ').asstring))>0 then
|
|
|
|
|
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;
|
|
|
|
|
|
|
|
|
|
inifile1:=Tinifile.Create(ExtractFilePath(application.ExeName)+'main.ini');
|
|
|
|
|
inifile1.WriteString('EDI','MSCSEND',edit1.text);
|
|
|
|
|
inifile1.WriteString('EDI','MSCRECIEVE',edit2.text);
|
|
|
|
|
inifile1.WriteString('EDI','MSCSENDNAME',edit3.text);
|
|
|
|
|
inifile1.WriteString('EDI','MSCFTPSERVER',edit4.text);
|
|
|
|
|
inifile1.WriteString('EDI','MSCFTPPATH',edit5.text);
|
|
|
|
|
inifile1.WriteString('EDI','MSCFTPNAME',edit6.text);
|
|
|
|
|
inifile1.WriteString('EDI','MSCFTPPASS',edit7.text);
|
|
|
|
|
inifile1.free;
|
|
|
|
|
|
|
|
|
|
close;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.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('װ<>۴<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><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>').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(DataSet.fieldbyname('Ŀ<>ĵش<C4B5><D8B4><EFBFBD>').asstring)='' then begin
|
|
|
|
|
result:=false;
|
|
|
|
|
MessageDlg('Ŀ<>ĵش<C4B5><D8B4>벻<EFBFBD><EBB2BB>Ϊ<EFBFBD><CEAA>',mtWarning,[mbOk],0);
|
|
|
|
|
exit;
|
|
|
|
|
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(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;
|
|
|
|
|
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;
|
|
|
|
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
function Tfrm_op_seae_edi_msc.CreateEdiFile:TStrings;
|
|
|
|
|
var str,aTempList:TStringlist;
|
|
|
|
|
strType,SenderCode,ReciverCode:string;
|
|
|
|
|
i,k,LineNo:integer;
|
|
|
|
|
begin
|
|
|
|
|
try
|
|
|
|
|
aTempList:=TStringlist.create;
|
|
|
|
|
str:=TStringlist.create;
|
|
|
|
|
|
|
|
|
|
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';
|
|
|
|
|
I:=0;
|
|
|
|
|
if frm_op_seae.dxdbgrid1.SelectedCount<=1 then
|
|
|
|
|
begin
|
|
|
|
|
if not isEditrue(frm_op_seae.t_op_seae) then abort;
|
|
|
|
|
I:=0;
|
|
|
|
|
str.add(Record00(strType,SenderCode,ReciverCode));
|
|
|
|
|
str.add(Record10(frm_op_seae.t_op_seae));
|
|
|
|
|
str.add(Record12(frm_op_seae.t_op_seae));
|
|
|
|
|
str.add(Record13(frm_op_seae.t_op_seae));
|
|
|
|
|
str.add(Record16_17_18('16','SH','<27><><EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD><CBB4><EFBFBD>',frm_op_seae.t_op_seae));
|
|
|
|
|
str.add(Record16_17_18('17','CO','<27>ջ<EFBFBD><D5BB>˴<EFBFBD><CBB4><EFBFBD>',frm_op_seae.t_op_seae));
|
|
|
|
|
str.add(Record16_17_18('18','C1','֪ͨ<CDA8>˴<EFBFBD><CBB4><EFBFBD>',frm_op_seae.t_op_seae));
|
|
|
|
|
|
|
|
|
|
aTempList:=RecordRB(85,'RB','EDI<44><49>ע',frm_op_seae.t_op_seae);
|
|
|
|
|
str.addstrings(aTempList);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
str.add(Record21(frm_op_seae.t_op_seae));
|
|
|
|
|
str.add(Record41(frm_op_seae.t_op_seae));
|
|
|
|
|
str.add(Record43(frm_op_seae.t_op_seae));
|
|
|
|
|
|
|
|
|
|
aTempList:=Record44_47(35,10,'44','<27><>ͷ',frm_op_seae.t_op_seae);
|
|
|
|
|
str.addstrings(aTempList);
|
|
|
|
|
|
|
|
|
|
aTempList:=Record44_47(70,5,'47','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',frm_op_seae.t_op_seae);
|
|
|
|
|
str.addstrings(aTempList);
|
|
|
|
|
|
|
|
|
|
aTempList:=Record51(frm_op_seae.t_op_seae);
|
|
|
|
|
str.addstrings(aTempList);
|
|
|
|
|
I:=str.Count;
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
begin
|
|
|
|
|
I:=0;
|
|
|
|
|
str.add(Record00(strType,SenderCode,ReciverCode));
|
|
|
|
|
str.add(Record10(frm_op_seae.t_op_seae));
|
|
|
|
|
for k:=0 to frm_op_seae.dxdbgrid1.SelectedCount-1 do
|
|
|
|
|
begin
|
|
|
|
|
lineno:=0;
|
|
|
|
|
frm_op_seae.t_op_seae.GotoBookmark(pointer(frm_op_seae.dxdbgrid1.selectedrows[k]));
|
|
|
|
|
if not isEditrue(frm_op_seae.t_op_seae) then abort;
|
|
|
|
|
str.add(Record12(frm_op_seae.t_op_seae));
|
|
|
|
|
str.add(Record13(frm_op_seae.t_op_seae));
|
|
|
|
|
str.add(Record16_17_18('16','SH','<27><><EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD><CBB4><EFBFBD>',frm_op_seae.t_op_seae));
|
|
|
|
|
str.add(Record16_17_18('17','CO','<27>ջ<EFBFBD><D5BB>˴<EFBFBD><CBB4><EFBFBD>',frm_op_seae.t_op_seae));
|
|
|
|
|
str.add(Record16_17_18('18','N1','֪ͨ<CDA8>˴<EFBFBD><CBB4><EFBFBD>',frm_op_seae.t_op_seae));
|
|
|
|
|
|
|
|
|
|
aTempList:=RecordRB(85,'RB','EDI<44><49>ע',frm_op_seae.t_op_seae);
|
|
|
|
|
str.addstrings(aTempList);
|
|
|
|
|
|
|
|
|
|
str.add(Record21(frm_op_seae.t_op_seae));
|
|
|
|
|
str.add(Record41(frm_op_seae.t_op_seae));
|
|
|
|
|
str.add(Record43(frm_op_seae.t_op_seae));
|
|
|
|
|
lineno:=8;
|
|
|
|
|
|
|
|
|
|
aTempList:=Record44_47(35,10,'44','<27><>ͷ',frm_op_seae.t_op_seae);
|
|
|
|
|
str.addstrings(aTempList);
|
|
|
|
|
lineno:=lineno+aTempList.count;
|
|
|
|
|
|
|
|
|
|
aTempList:=Record44_47(70,5,'47','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',frm_op_seae.t_op_seae);
|
|
|
|
|
str.addstrings(aTempList);
|
|
|
|
|
lineno:=lineno+aTempList.count;
|
|
|
|
|
|
|
|
|
|
aTempList:=Record51(frm_op_seae.t_op_seae);
|
|
|
|
|
str.addstrings(aTempList);
|
|
|
|
|
lineno:=lineno+aTempList.count;
|
|
|
|
|
|
|
|
|
|
I:=I+lineno;
|
|
|
|
|
end;
|
|
|
|
|
I:=I+3;
|
|
|
|
|
end;
|
|
|
|
|
finally
|
|
|
|
|
str.Add('99:'+intToStr(i+1)+'''');
|
|
|
|
|
Result:=str;
|
|
|
|
|
freeandnil(aTempList);
|
|
|
|
|
//freeandnil(str);
|
|
|
|
|
end;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
procedure Tfrm_op_seae_edi_msc.bsSkinButton3Click(Sender: TObject);
|
|
|
|
|
var
|
|
|
|
|
IdFTP1:TIdFTP;
|
|
|
|
|
str:widestring;
|
|
|
|
|
str_file:widestring;
|
|
|
|
|
ftpar,ftpname,ftppass,ftppath,ScriptPath:String;
|
|
|
|
|
StrL:TStrings;
|
|
|
|
|
inifile1:Tinifile;
|
|
|
|
|
i:integer;
|
|
|
|
|
begin
|
|
|
|
|
|
|
|
|
|
ScriptPath:=ExtractFilePath(ParamStr(0))+'EDIFILE\';
|
|
|
|
|
if not DirectoryExists(ScriptPath) then
|
|
|
|
|
CreateDir(ScriptPath);
|
|
|
|
|
|
|
|
|
|
ftpar:=Trim(edit4.Text);
|
|
|
|
|
if ftpar='' then begin
|
|
|
|
|
MessageDlg('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FTP<54><50>ַ<EFBFBD><D6B7>',mtWarning,[mbOk],0);
|
|
|
|
|
exit;
|
|
|
|
|
end;
|
|
|
|
|
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;
|
|
|
|
|
ftppath:=Trim(edit5.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)+'.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)+'.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:=CreateEdiFile
|
|
|
|
|
else
|
|
|
|
|
StrL:=CreateEdiFile
|
|
|
|
|
else if Pos('<27><>Ʊ',(frm_op_seae.t_op_seae.fieldbyname('װ<>˷<EFBFBD>ʽ').asstring))>0 then
|
|
|
|
|
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);
|
|
|
|
|
finally
|
|
|
|
|
FreeAndNil(StrL)
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
try
|
|
|
|
|
|
|
|
|
|
IdFTP1:=TIdFTP.Create(application);
|
|
|
|
|
with idftp1 do
|
|
|
|
|
begin
|
|
|
|
|
Username:=ftpname;
|
|
|
|
|
Password:=ftppass;
|
|
|
|
|
Host:=ftpar;
|
|
|
|
|
Connect;
|
|
|
|
|
end;
|
|
|
|
|
idftp1.ChangeDir(ftppath);
|
|
|
|
|
idftp1.TransferType:=ftBinary;
|
|
|
|
|
idftp1.Put(str,str_file);
|
|
|
|
|
idftp1.Disconnect;
|
|
|
|
|
|
|
|
|
|
inifile1:=Tinifile.Create(ExtractFilePath(application.ExeName)+'main.ini');
|
|
|
|
|
inifile1.WriteString('EDI','MSCSEND',edit1.text);
|
|
|
|
|
inifile1.WriteString('EDI','MSCRECIEVE',edit2.text);
|
|
|
|
|
inifile1.WriteString('EDI','MSCSENDNAME',edit3.text);
|
|
|
|
|
inifile1.WriteString('EDI','MSCFTPSERVER',edit4.text);
|
|
|
|
|
inifile1.WriteString('EDI','MSCFTPPATH',edit5.text);
|
|
|
|
|
inifile1.WriteString('EDI','MSCFTPNAME',edit6.text);
|
|
|
|
|
inifile1.WriteString('EDI','MSCFTPPASS',edit7.text);
|
|
|
|
|
inifile1.free;
|
|
|
|
|
|
|
|
|
|
showmessage('<27>ļ<EFBFBD><C4BC>ϴ<EFBFBD><CFB4>ɹ<EFBFBD><C9B9><EFBFBD>');
|
|
|
|
|
except
|
|
|
|
|
deletefile(str);
|
|
|
|
|
showmessage('<27>ļ<EFBFBD><C4BC>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
|
|
|
|
end;
|
|
|
|
|
idftp1.Free;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
procedure Tfrm_op_seae_edi_msc.bsSkinButton4Click(Sender: TObject);
|
|
|
|
|
begin
|
|
|
|
|
if frm_op_seae_edi_MSC.Height=349 then
|
|
|
|
|
frm_op_seae_edi_MSC.Height:=200
|
|
|
|
|
else
|
|
|
|
|
frm_op_seae_edi_MSC.Height:=349;
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
end.
|