拆分并替换(或)替换SAP ODATA和ABAP中" ##"不起作用的所有事件

2020-08-20 02:06发布

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

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


1。 在Sap fiori复制中,用户将保留第一行文本并获得2行空间用户单击2次Enter,直到下一行用户将享受相同的过程,一旦用户单击保存,数据将到达后端,并用' ##"自动显示为"一般预订备注测试:##也请在预订请求表中上传布局。##仅更改数据,这是错误的"。

2。 数据将保存在后端Z表中(用于保存数据的域:string/char255)。

***我的要求**

3我正在尝试拆分和替换(或)将所有出现的字符串替换为'##'。

在保存数据后,我正在从表中读取数据时执行以下操作。

将" ##"处的lv_text拆分到表lt_remark_text中。

将" ##"处的lv_text拆分为lv_st1 lv_st2 lv_st3。

用``*''替换lv_text中所有'##'的事件。

在lv_st5中将" ##"替换为" *"。

在存储/检索数据时,我尝试使用不同的数据类型(char,string,xstring ..(原始字符串不在Odata edm.string的接收器中))没有任何作用,

尝试使用cl_abap_char_utilities => horizo​​ntal_tab进行拆分,但没有运气。

尝试使用不同的功能模块没有运气。

在将数据保存到数据库表中之前,请执行上述操作,祝您好运。

微笑要求: https://answers.sap.com/questions/5958901/split-at-%27%27-into-table--not-working.html

我很累,但是没有运气。

**需要您的帮助和指导来处理" ##"的拆分和替换。

a)在image1下方,将数据从Fiori保存到Odata。

b)图像2以Odata方法引用数据。

c)图片3数据存储在表中。

谢谢。

(34.2 kB)

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

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


1。 在Sap fiori复制中,用户将保留第一行文本并获得2行空间用户单击2次Enter,直到下一行用户将享受相同的过程,一旦用户单击保存,数据将到达后端,并用' ##"自动显示为"一般预订备注测试:##也请在预订请求表中上传布局。##仅更改数据,这是错误的"。

2。 数据将保存在后端Z表中(用于保存数据的域:string/char255)。

***我的要求**

3我正在尝试拆分和替换(或)将所有出现的字符串替换为'##'。

在保存数据后,我正在从表中读取数据时执行以下操作。

将" ##"处的lv_text拆分到表lt_remark_text中。

将" ##"处的lv_text拆分为lv_st1 lv_st2 lv_st3。

用``*''替换lv_text中所有'##'的事件。

在lv_st5中将" ##"替换为" *"。

在存储/检索数据时,我尝试使用不同的数据类型(char,string,xstring ..(原始字符串不在Odata edm.string的接收器中))没有任何作用,

尝试使用cl_abap_char_utilities => horizo​​ntal_tab进行拆分,但没有运气。

尝试使用不同的功能模块没有运气。

在将数据保存到数据库表中之前,请执行上述操作,祝您好运。

微笑要求: https://answers.sap.com/questions/5958901/split-at-%27%27-into-table--not-working.html

我很累,但是没有运气。

**需要您的帮助和指导来处理" ##"的拆分和替换。

a)在image1下方,将数据从Fiori保存到Odata。

b)图像2以Odata方法引用数据。

c)图片3数据存储在表中。

谢谢。

(34.2 kB)
付费偷看设置
发送
3条回答
spaceman01
1楼 · 2020-08-20 02:24.采纳回答

我的查询已清除,我已享受以下程序的服务,并且按预期工作。

如果lv_remark_text不是初始的。

调用函数'SCMS_STRING_TO_XSTRING'
导出
文本= lv_remark_text
导入
缓冲区= lv_text_x
异常
失败= 1
其他=2。
如果lv_text_x 不是初始的。
调用函数'NLS_STRING_CONVERT_TO_SYS'
导出
lang_used = sy-langu
源= lv_text_x
from_fe ='MS'
导入
结果= lv_text1
*被吸收=
异常
非法_系统代码页= 1
否_fe_codepage_found = 2
may_not_convert = 3
其他=4。
如果sy-subrc <>0。
*实现适当 错误处理此处
endif。

如果sy-subrc ne 0,则将lv_text1中所有'##'出现的地方都替换为'*'。
如果sy-subrc ne 0。 lv_text1带有'*'。
endif。

将lv_text1的'*'拆分为表lt_remark_text。
endif。
endif。

暮风yp
2楼-- · 2020-08-20 02:17

hi Mahesh,

我的要求就像我收到要发送的数据一样,我必须发送电子邮件,在电子邮件中,我必须拆分文本并按照用户的意愿在前端(逐行)发送。 我有解决方案,现在可以正常工作。

me_for_i
3楼-- · 2020-08-20 02:33

您应该尝试使用CL_ABAP_CHAR_UTILITIES => CR_LF

您的问题有点令人困惑,无论如何,您还必须以与用户输入的格式相同的格式向其他用户显示文本 ,那么为什么不将文本保存为来自fiori的文本而不进行进一步转换。

,您可以返回长度为0(完整长度)的odata edm.string类型的相同数据。 因此,UI会以用户先前输入的格式自动显示数据。

一周热门 更多>