云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

网站建设_数据库恢复数据_折扣

小七 141 0

简介

这篇博文讨论了完成与SAP通知和任务创建相关的一项要求的方法。

简单来说,如果我解释什么是SAP通知和任务,那么通知是一个任务包,其中包含每个任务要执行的预定义功能,现在为了激活任务,它必须被发布以进行进一步处理。

现在让我们讨论一下是什么要求,以及我采取了什么方法来完成它。

要求

要求通过IW51事务创建通知,然后创建与之对应的任务,一旦完成,用户将打开"任务"选项卡,在那里他/她可以看到正在生成的所有任务,同时根据他/她的选择将发布少量或全部任务。

一旦用户在后台发布任务,需要生成一个包含动态和静态数据的word文档,其中包含客户端徽标,并且必须将其附加到相同的任务。

接近

现在看需求,出现的要点很少,其余的解决方案围绕着它。

a)动态生成包含动态和静态数据的Word文档。

b)将生成的Word文档附加到发布的任务。

c)最后触发a中的上述两个步骤通知任务发布后立即组合。

RTF或富文本文件是由Microsoft创建的,顾名思义,它的格式、样式等都比通常的文本文件丰富。关于RTF(文件扩展名:.RTF)最好的一点是,如果保存为".doc"或".docx",它将被转换成上述格式而不会出现任何问题。

要创建RTF文件,我们可以使用任何文字处理器(在我们的情况下不是这样),也可以使用RTF代码(RTF代码由纯文本、命令、转义符和组组成:纯文本包含七位(US)ASCII)除\、{和}以外的字符。)在ABAP代码中,通信云,当我们在生成文件的内部表中使用数据时。

注意:由于我们使用某种代码(RTF代码),因此需要程序/软件来呈现它。不用担心,微软Word、OpenOffice或任何文字处理软件都会帮我们这个忙。

对于这个要求,大数据怎么用,我使用SE61中存储的静态文本作为普通文本。但是其中有一个子句,我已经根据需要在文本中编写了RTF代码,这样当它在ABAP中调用时,我们就可以在内部表中获得所有内容。在我看来,对于某些模板的动态文本,我们可以使用相同的方法,但保留一些占位符,这些占位符是唯一的,如果该行存在占位符,可以通过代码修改表本身来轻松替换。

让ZSCM\u text\u MVTMSG是使用编辑文档TCODE(SE61)创建的通用文本。以下是数据:

这看起来很混乱,但事实并非如此。让我们解码上面的文本,其中包含数据和RTF代码:

{–标记文档、属性等的开始。RTF–表示与HTML或XML类似的文件格式。ANSI–字符编码{\pard\qc–以对齐为中心标记段落开头(qc表示中心对齐)。\pict\pngblip–pict表示我们要在文档中添加图片,pngblip表示它是png类型。长段落看起来像是一袋随机数字和字母,实际上是十六进制编码的图像。您可以轻松地转换任何图像或文件在十六进制使用在线工具。我将在最后提供链接。\par}——这是指段落的结尾。在我们的例子中,我们将结束一个由图像组成的居中对齐的段落。{\line}–用于换行符。就像
的html。{\b text}–要加粗这些括号范围内的文本

ABAP代码:

我们可以使用上面的格式,将我们的文本放在lt\u行内部表中,并使用此格式,我们可以根据需要对其进行操作以合并动态文本。最后,我们可以使用这个内部表,在我们的系统上下载文件,或者通过ABAP通过电子邮件共享,等等。保持格式/扩展名为".doc"/".docx"/".rtf"。

下面是将上述内部表下载到系统时生成的最终输出截图,使用扩展名为".doc":

这是一段代码,显示使用的变量和传递给每个变量的值,即(lv_qmnum是通知编号,lv\ U manum是任务号,gc\u doc\u file\u name is Filename)。

这里是完整的代码供参考:

注意:在上面的代码中**表示您需要在这里提供自己创建的变量名。

一旦一切就绪,物联网应用,剩下的唯一事情就是找到一个地方,一旦通知任务完成,就应该运行上面两个步骤的组合release.

同样的,我发现一旦你发布了业务对象QMSM的Task Released事件,家庭人工智能,就会触发,所以我在这之后执行了以下步骤:

在PFTC中创建了一个自定义任务。在QMSM的扩展业务对象中添加了一个新方法,我将其创建为Z。在包含上述代码的任务中附加方法。现在在任务中有一个名为triggering event的选项卡,我在其中给出了业务对象QMSM的Released方法(因此这使得此任务仅在业务对象QMSM的事件释放时触发)一旦完成激活任务,我们就开始准备工作了。