SAP GUI 750-某些RFC问题(wdtfuncs.ocx,wdtaocx.ocx,wdtlogU.ocx)

2020-09-15 07:20发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨社区 我们使用SAP...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨社区


我们使用SAP RFC控件连接到SAP系统并调用一些功能模块。
E.G. RFC_READ_TABLE和RFC_CALL_TRANSACTION_USING

我们现在遇到的问题是,无法覆盖表(SAPTableFactoryCtrl.Table)中的值。 这是在安装GUI 750 Patch 7 HF 2之后发生的。我们以前使用740。

rfc_BR_DATA的结构是这样的:

 1:PROGRAM BDC_PROG CHAR 40 0 BDC Modulpool
 2:DYNPRO BDC_DYNR NUMC 4 0 BDC DynproNummer
 3:DYNBEGIN BDC_START CHAR 1 0 BDC启动eines Dynpros
 4:FNAM FNAM_____4 CHAR 132 0 Feldname
 5:FVAL BDC_FVAL CHAR 132 0 BDC-FieldValue 

插入一些行后,有时我不得不修改一个值。 这不再起作用了。 我使用了" table(row,col)= value",在探究了不当行为之后,我尝试了其他方法来修改该值(.cell(row,col)...)。总线从未修改过该值。
我的解决方法是删除旧行,然后插入新行。 在这种情况下,这不会造成任何问题,因为顺序不那么重要,因为我仍然在同一个dynpro中(对于任何知道RFC_CALL_TRANSACTION的人)。

'VBA
 '修改BDC_OKCODE并退出
 如果rfc_BT_DATA(i," FNAM")=" BDC_OKCODE",则
     ''不工作了
     'rfc_BT_DATA(i,5)= newOKCODE
     'rfc_BT_DATA.cell(i,5)= newOKCODE
     'rfc_BT_DATA.value(i,5)= newOKCODE
     'rfc_BT_DATA.Rows(i).value(5)= newOKCODE
    
     ''解决方法
     ''删除旧行,插入新行
     rfc_BT_DATA.DeleteRow我
     使用rfc_BT_DATA
         '新行
         .AppendRow
         '填充列
         .cell(.RowCount," FNAM")=" BDC_OKCODE"
         .cell(.RowCount," FVAL")= newOKCODE
     结束于
 如果结束


使用SAPFunctionsOCX.Function.Exception时,我遇到了一些其他问题,似乎无缘无故地被填补了。 但这可以通过在处理异常文本之前检查ReturnCode来解决。 (例如,RFC_READ_TABLE用" A"填充"异常")。

我们还注意到登录过程的时间跨度急剧增加。 现在,第一次连接大约需要10秒钟。 740可以立即连接。