2020-09-08 01:50发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家,
如何在WBS_USER_FIELDS_F4..i内部进行编码已经实现了。 我需要对PRPS-USR03字段进行搜索帮助。
嗨
请参阅注释848866,该注释提供了badi WBS_USER_FIELDS_F4,客户可以在其中为WBS上的用户字段创建自己的匹配代码
致谢
Sudheer
尊敬的Sudheer,
注意是要修复在4.7C之前的早期版本中导致错误的badi。
我已经在BADI中进行了编码:
E_VALUE ='testinggg123'。
当我单击Proj Cat(USR03)字段的F4时,搜索帮助确实返回了" testinggg123"的值,这意味着BADI可以使用。
但是,如果我在其他字段上单击F4:USR00-USR02,值" testinggg123"也会返回到屏幕,这意味着BADI不能正常工作,因为我只想让搜索帮助对USR03字段起作用。
请提供有关如何对BADI进行编码的建议,以便它仅返回字段USR03的搜索值。
谢谢
消息的编辑者:
酯johannes
Oss注释-699400
将传输以下参数:
I_PROJECTDEFINITION项目定义
I_WBS_ELEMENT WBS元素
I_USER_FIELD当前用户字段的名称,例如PRPS-USR00
在E_VALUE中,返回在特定于客户的F4帮助中确定的值。 仅当相应的用户字段可在屏幕上输入时,才更改相应的用户字段。 最长的用户字段包含20个字符。 因此,E_VALUE的类型也为CHAR20。但是,请记住,用户字段也较短,并且在E_VALUE中必须返回较短的返回字符串。
请记住,只有SPACE或 在复选框(USR10和USR11)中," X"作为返回值很有意义。
1。 BAdI WBS_USER_FIELDS_F4
使用SE18,创建定义WBS_USER_FIELDS_F4
短文本:项目中用户字段的客户特定F4帮助
在"类型"框中, 初始化"多次使用"复选框
开发类或程序包CJBADI
"接口"选项卡页面
双击" IF_EX_WBS_USER_FIELDS_F4"
为此方法创建以下参数:
参数类型PassVal。 选择。 典型值 Ass.Type Opt Typ
I_proj导入类型PROJ
I_prps导入类型PRPS
I_USER_FIELD导入类型DD03D-FIELDNAME
E_VALUE导出类型 PRPS-USR00
激活界面。
2。 使用SE38创建Includes LCONWI3Y和LCONWF31,它们的类型均为" I"(包含)
3。 如所附程序更正中所述,使用SE51更改屏幕SAPLCJWB/1460的流逻辑,并激活屏幕
4。 实施随附的程序更正
5。 使用事务SE19,实现方法的客户特定内容
我解决了此问题。现在可以使用了
检查i_user_field ='PRPS-USR03'。
e_value ='testinggg123'。
您能发布您的代码吗? 我在调用
呼叫方法lo_F4-> AT_F4(导出 I_PROJ = ld_I_PROJ I_PRPS = ld_I_PRPS I_USER_FIELD = ld_I_USER_FIELD IMPORTING E_VALUE = ld_E_VALUE)。
最多设置5个标签!
嗨
请参阅注释848866,该注释提供了badi WBS_USER_FIELDS_F4,客户可以在其中为WBS上的用户字段创建自己的匹配代码
致谢
Sudheer
尊敬的Sudheer,
注意是要修复在4.7C之前的早期版本中导致错误的badi。
我已经在BADI中进行了编码:
E_VALUE ='testinggg123'。
当我单击Proj Cat(USR03)字段的F4时,搜索帮助确实返回了" testinggg123"的值,这意味着BADI可以使用。
但是,如果我在其他字段上单击F4:USR00-USR02,值" testinggg123"也会返回到屏幕,这意味着BADI不能正常工作,因为我只想让搜索帮助对USR03字段起作用。
请提供有关如何对BADI进行编码的建议,以便它仅返回字段USR03的搜索值。
谢谢
消息的编辑者:
酯johannes
Oss注释-699400
将传输以下参数:
I_PROJECTDEFINITION项目定义
I_WBS_ELEMENT WBS元素
I_USER_FIELD当前用户字段的名称,例如PRPS-USR00
在E_VALUE中,返回在特定于客户的F4帮助中确定的值。 仅当相应的用户字段可在屏幕上输入时,才更改相应的用户字段。 最长的用户字段包含20个字符。 因此,E_VALUE的类型也为CHAR20。但是,请记住,用户字段也较短,并且在E_VALUE中必须返回较短的返回字符串。
请记住,只有SPACE或 在复选框(USR10和USR11)中," X"作为返回值很有意义。
1。 BAdI WBS_USER_FIELDS_F4
使用SE18,创建定义WBS_USER_FIELDS_F4
短文本:项目中用户字段的客户特定F4帮助
在"类型"框中, 初始化"多次使用"复选框
开发类或程序包CJBADI
"接口"选项卡页面
双击" IF_EX_WBS_USER_FIELDS_F4"
< p>创建方法AT_F4,短文本:" F4用户字段帮助"为此方法创建以下参数:
参数类型PassVal。 选择。 典型值 Ass.Type Opt Typ
I_proj导入类型PROJ
I_prps导入类型PRPS
I_USER_FIELD导入类型DD03D-FIELDNAME
E_VALUE导出类型 PRPS-USR00
激活界面。
2。 使用SE38创建Includes LCONWI3Y和LCONWF31,它们的类型均为" I"(包含)
3。 如所附程序更正中所述,使用SE51更改屏幕SAPLCJWB/1460的流逻辑,并激活屏幕
4。 实施随附的程序更正
5。 使用事务SE19,实现方法的客户特定内容
我解决了此问题。现在可以使用了
检查i_user_field ='PRPS-USR03'。
e_value ='testinggg123'。
您能发布您的代码吗? 我在调用
时遇到运行时错误呼叫方法lo_F4-> AT_F4(
导出
I_PROJ = ld_I_PROJ
I_PRPS = ld_I_PRPS
I_USER_FIELD = ld_I_USER_FIELD
IMPORTING
E_VALUE = ld_E_VALUE)。
谢谢
一周热门 更多>