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

美国服务器_营销网站建设价格_怎么样

小七 141 0

要求:

我的一个客户要求打印发票表单(使用新的SAP S/4HANA output management定制开发的表单),每个副本都有不同的标签,如下所示,所有副本都需要在保存发票或发生任何更改时打印。

在普通adobe表单中,新手建站教程,可以通过循环调用FM如下-

通过"FP\U Job\U OPEN"启动假脱机作业。循环N次。在此循环中使用文本名称作为单独参数调用adobefm。结束循环。通过"FP\u job\u CLOSE"停止spool作业

但是在带有片段的Adobe表单中,表单是通过网关服务调用的,国内云服务器,我们无法利用一次使用一种输出类型多次调用同一网关服务。

解决方案:

因此我在这里遇到了一个棘手的解决方案。我在这里以销售发票为例。

我们创建了BRF+设置多个输出的配置–每个要打印的副本一个输出。因此,例如

ZOUTPUT_XXXX_X_1表示原件,

ZOUTPUT_XXXX_X_2表示副本,

ZOUTPUT_XXXX_X_3表示三份,淘客怎么做,等等。

在配置中,信息大数据,每个输出的副本数都设置为1。您可以让您的功能顾问通过BRF+中的OPD tcode进行此配置。OPD中的所有输出类型都使用相同的表单模板。

配置完成后,无论何时保存发票,激活多个输出,每个输出引用同一表单的单独副本,因此对于同一发票的每个输出调用一次OData服务。

保存后,发票消息的输出将如下-

在表单模板中,您需要将文本字段绑定到OData服务的属性。在这个属性中,我们将根据触发的输出类型设置副本的值,例如ORIGINAL、DUPLICATE、TRIPLICATE等。

要在运行时获得输出类型,我们需要在标准类CL\u APOC\u或\u H\u实用程序中进行增强。在调用ODATA服务数据提供程序之前调用该类。

在类CL\u APOC\u或\u H\u实用程序的方法\u RENDER\u文档上实现退出前增强。在方法内部捕获IR\u或\u项(传入输出记录引用),并将其传输到类的全局静态变量中。

(在本例中,ZCL\u SD\u INVOICE\u DATA稍后在OData服务中用于获取输出数据)类型。你也可以使用"导出到内存",什么叫大数据云计算,以后可以导入到数据提供程序类方法。)。

在OData服务数据提供程序方法中,使用静态属性ZCL\u SD\u PROFORMA\u data=>GS\u IR\u或\u ITEM-OUTPUT\u TYPE,并根据OUTPUT\u TYPE中的名称,为OData实体属性赋值,例如,如果OUTPUT TYPE name以'\u 1'结尾,则为ORIGINAL,name以'\u 2'结尾,重复,等等。此属性绑定到您的表单布局字段,以根据表单的副本显示不同的文本。

不同表单副本的输出如下。

结论:

您可以使用此方法拥有具有不同标签的多个表单副本。当客户需要在保存发票时立即打印单独的副本时,它非常有用。此方法可用于不同的流程(发票、销售订单),其中SAP S/4HANA output management用于生成表单。

请告诉我您的意见。