1.被动付款入账_定时从付款单携带SAP应付凭证单号

--s
This commit is contained in:
weiyunlong 2025-03-13 18:25:21 +08:00
parent 31be8eb1bd
commit 84d6803603
2 changed files with 45 additions and 0 deletions

View File

@ -0,0 +1,37 @@
package shjh.jhzj7.fi.fi.plugin.task;
import kd.bos.context.RequestContext;
import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.exception.KDException;
import kd.bos.orm.query.QCP;
import kd.bos.orm.query.QFilter;
import kd.bos.schedule.executor.AbstractTask;
import kd.bos.servicehelper.BusinessDataServiceHelper;
import kd.bos.servicehelper.operation.SaveServiceHelper;
import kd.sdk.plugin.Plugin;
import java.math.BigDecimal;
import java.util.Map;
/**
* 被动付款入账_定时从付款单携带SAP应付凭证单号
*/
public class BeiIntelpayBillTask extends AbstractTask implements Plugin {
@Override
public void execute(RequestContext requestContext, Map<String, Object> map) throws KDException {
QFilter q1 = new QFilter("debitamount",QCP.large_than, BigDecimal.ZERO);
QFilter q2 = new QFilter("shjh_credentialnum", QCP.equals, "");
DynamicObject[] beiIntelpays = BusinessDataServiceHelper.load("bei_intelpay", "id,billno,shjh_credentialnum", new QFilter[]{q1, q2});
for (DynamicObject beiIntelpay : beiIntelpays) {
//获取付款单
QFilter q3 = new QFilter("sourcebillnumber", QCP.equals, beiIntelpay.getString("billno"));////源单编码
DynamicObject paybill = BusinessDataServiceHelper.loadSingle("cas_paybill", new QFilter[]{q3});
if (null != paybill) {
beiIntelpay.set("shjh_credentialnum",paybill.getString("shjh_credentialnum"));//SAP应付凭证单号
SaveServiceHelper.save(new DynamicObject[]{beiIntelpay});
}
}
}
}

View File

@ -89,6 +89,14 @@ public class VouchernumControler {
bankjournal.set("shjh_credentialnum",voucherNum);
SaveServiceHelper.save(new DynamicObject[]{bankjournal});
}
//同步更新被动付款入账(bei_intelpay)__被动 主动参考操作代码BeiIntelpayBillTask
String sourcebillnumber = paybill.getString("sourcebillnumber");//源单编码:被动付款单号(bei_intelpay)
QFilter q4 = new QFilter("billno", QCP.equals, sourcebillnumber);
DynamicObject beiIntelpay = BusinessDataServiceHelper.loadSingle("bei_intelpay", q4.toArray());
if (null != beiIntelpay) {
beiIntelpay.set("shjh_credentialnum",voucherNum);
SaveServiceHelper.save(new DynamicObject[]{beiIntelpay});
}
paybill.set("shjh_credentialnum",voucherNum);//SAP付款凭证号
paybill.set("shjh_voucherdate",formattedDateAsDate);//SAP凭证过账日期