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

2020-09-15 07:20发布

         点击此处--->   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可以立即连接。

         点击此处--->   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可以立即连接。

付费偷看设置
发送
2条回答
DafaDDDa
1楼 · 2020-09-15 08:09.采纳回答

您好Tobias,

以下博客发布者: Stefan Schnell

当然,它将帮助您解决该问题。

https://博客。 sap.com/2017/05/21/different-behaviour-of-new-sap-activex-controls /

致谢

ZJXianG
2楼-- · 2020-09-15 08:17

Roberto,

感谢您的链接。 Stefan的帖子帮助我更正了out programm中的所有其他错误。

我认为,我提到的问题是未解决的问题。 如果有人遇到相同的问题或解决方案,我将等待一段时间,否则请在SAP注释中打开故障单。

一周热门 更多>