请尝试使用以下脚本 -Dim sapConn As Object \声明连接对象 Set sapConn = CreateObject("SAP.Functions") \创建 ActiveX 对象 sapConn.Connection.user = "username" sapConn.Connection.Password = "xxxx" sapConn.Connection.client = "client#" sapConn.Connection.ApplicationServer = "Application Server” sapConn.Connection.Language = "PT" If sapConn.Connection.Logon(0, True) True Then //在此处检查连接 MsgBox "无法登录到 SAP" Else MsgBox "登录成功!!" End If Dim rfcAcctDocCheck As Object Dim oAcctHeader As Object Dim otAcctAR, otAcctGL, otAcctAP, otAcctAMT, otReturn As Object Set rfcAcctDocCheck = sapConn.Add("BAPI_ACC_DOCUMENT_CHECK") Set oAcctHeader = rfcAcctDocCheck.Exports("DOCUMENTHEADER") Set otAcctGL = rfcAcctDocCheck.Tables("ACCOUNTGL") Set otAcctAR = rfcAcctDocCheck.Tables("ACCOUNTRECEIVABLE") Set otAcctAP = ... 阅读更多
在结构中指定表的规则是,必须为该字段指定非唯一约束。TYPES: myType TYPE TABLE OF string WITH NON-UNIQUE DEFAULT KEY然后在结构定义中使用它:TYPES: BEGIN OF ty_itab, ….. myTable type myType, …….. TYPES: END OF ty_itab.
在 SAP 系统中,异步调用 (aRFC) 是指使用 RFC 接口指定的功能模块 func 的远程启用功能模块。使用 DESTINATION 附加项在 dest 中指定单个目标,或使用 IN GROUP 指定一组应用程序服务器。后者支持并行处理多个功能模块。查看以下链接,其中介绍了异步 RFC:https://help.sap.com/http.svc/rc/abapdocu_751_index_htm/7.51/en-US/abapcall_function_starting.htm#!ABAP_ADDITION_2@2@
查看处理并行处理的代码-gv_semaphore = 0. DESCRIBE TABLE lt_itab LINES lv_lines. LOOP AT lt_itab INTO ls_itab. CALL FUNCTION 'ZABC' STARTING NEW TASK taskname DESTINATION IN GROUP srv_grp PERFORMING come_back ON END OF TASK EXPORTING ... EXCEPTIONS ... . "
是的,这是可行的。您可以在 ABAP 中为 XML 创建简单的转换。您还可以使用 cl_proxy_xml_transform 在 XML 和 ABAP 之间转换数据。假设您使用 T 代码:SPROXY 创建了 ABAP 代理,或者它是通过 WebService 生成实用程序生成的,您可以使用实用程序类“cl_proxy_xml_transform”将 ABAP 的数据转换为 XML 格式,或者从 XML → ABAP。
当您想修改内容并将其存储到表中,以及为该值添加一列时,请使用类似以下内容DATA: my_string TYPE StringLOOP AT itab INTO wa_itab. my_string = sy-tabix. CONCATENATE some_text my_string more_text into wa_itab-my_field. MODIFY itab FROM wa_itab. CLEAR my_string. ENDLOOP.