在程序中調用RFC的Read_Text 取長文本 出錯!
procedure TfrmRFCB.btnReadTextClick(Sender: TObject);
begin
(* parameter "true" : SilentLogOn *)
if Connection.LogOn(0,true) <> true then
raise Exception.Create('Error logon!');
try
try
Animate1.Active := true;
(* assign the existing connection to the *)
(* component SAPFunctions1 *)
SAPFunctions2.Connection := Connection;
//調用Read_Text函數
Funct := SAPFunctions2.add('Read_Text');
Funct.exports('LANGUAGE').value := '1'; //文本語言:ZH,ZF
Funct.exports('ID').value := 'F01'; //標識: 項目文本F01
Funct.exports('OBJECT').value := 'EKKO';//文本對象:EKPO項目文本
//Funct.exports('CLIENT').value := '208';//
//關鍵標識號,表頭則為憑証號, 行項目文本則為(單號+項目易做图)
Funct.exports('NAME').value := Trim(edtCode.Text); //+POItems.Value(1,'PO_ITEM');
if not Funct.call then
showMessage(Funct.exception)
else
begin
POTEXTITEM := funct.tables.item('LINES');
Memo2.Lines.Add(POTEXTITEM.Value(1,'TDLINE'));
end;
except on E: Exception do
raise Exception.Create(E.Message);
end;
finally
Animate1.Active := false;
end;
end;
程序調用,運行到這一行就報錯,
Funct.exports('LANGUAGE').value := '1'; //文本語言:ZH,ZF
提示地址錯誤:Read of Address: 0000000 。 :(((((
請問如何在其它程序中中RFC方式調用,獲取PO的表頭文本,項目文本?
--------------------编程问答-------------------- 是在Funct := SAPFunctions2.add('Read_Text'); 就出地址錯 FUNCT地址為0000000
怎麼在RFC中取不到Read_Text啊
--------------------编程问答-------------------- Read_Text函數必須是RFC類型才能調用,如果不是,則要封裝一個RFC函數。
--------------------编程问答--------------------
这个是SAP的标准函数,外部不能直接调用的。先用se37去创建个RFC,在这里面再调用read_text
补充:企业软件 , ERP/CRM