使用JAVA添加免费凭证

2020-08-22 09:49发布

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

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


大家好:

我想知道如何使用代码手动添加免费凭证。

试图找到解决方案,我发现这个对象的属性与通过UI添加免费凭证时的属性类似。

但这不起作用。

有人知道该怎么做吗?

谢谢。

乔斯。

(8.5 kB)

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

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


大家好:

我想知道如何使用代码手动添加免费凭证。

试图找到解决方案,我发现这个对象的属性与通过UI添加免费凭证时的属性类似。

但这不起作用。

有人知道该怎么做吗?

谢谢。

乔斯。

(8.5 kB)
付费偷看设置
发送
2条回答
SAP砖家
1楼-- · 2020-08-22 10:10

您好JoséReyes ,您好艾萨克·瓦尔迪兹

对不起,您的回复很晚。

您需要在您的ReceiptEntity中添加一个新的PaymentItemEntity。 付款项目的类型必须为20,并且付款项目还需要附有凭证。 我没有亲自测试过它,因此可能会丢失其中一个需要设置的实体中的某些字段,但这将是一个不错的开始。

 尝试(CDBSession cdbSession = CDBSessionFactory.instance.createSession()){
             ReceiptPosService receiveManager = ServiceFactory.INSTANCE.getOrCreateServiceInstance(ReceiptPosService.class,cdbSession);

 PaymentItemEntity paymentItemEntity = new PaymentItemEntity();
 paymentItemEntity.setBusinessTransactionAmount(new BigDecimal(50));
 paymentItemEntity.setOriginalBusinessTransactionAmount(new BigDecimal(50));
 paymentItemEntity.setBusinessTransactioncurrency(" EUR");
 paymentItemEntity.setCreditCardTypeCode(PaymentItemEntity.PaymentType.FREE_VOUCHER);
 PaymentItemEntity.setPaymentFormCode(PaymentItemEntity.PaymentFormCode.VOUCHER);
 paymentItemEntity.setStatus(PaymentItemEntity.Status.CONFIRMED);

 VoucherEntity voucher = new VoucherEntity();
 voucher.setCashDeskId(" MY Cashdesk id");
 voucher.setCurrency(" EUR");
 voucher.setFreeVoucher(true);
 voucher.setOriginalAmount(new BigDecimal(50));
 voucher.setValidTo(new Date(2020,10,20));

 paymentItemEntity.setVoucher(voucher);

 receiveManager.addPaymentItems(receipt,paymentItemEntity);
 } 

收据Pos服务还会验证您的paymentItem和凭证。 因此,如果缺少任何内容,它应该引发异常,以提示您朝着正确的方向。

hth

Robert

粗暴的香蕉
2楼-- · 2020-08-22 10:18

嗨, Robert Zieschang 也许,您对此问题有解决方案或想法,可以通过插件添加免费凭证?

# p#

一周热门 更多>