diff --git a/main/java/shjh/jhzj7/fi/fi/plugin/operate/RecPushVoucherOperation.java b/main/java/shjh/jhzj7/fi/fi/plugin/operate/RecPushVoucherOperation.java index a11da5b..b8e2ff9 100644 --- a/main/java/shjh/jhzj7/fi/fi/plugin/operate/RecPushVoucherOperation.java +++ b/main/java/shjh/jhzj7/fi/fi/plugin/operate/RecPushVoucherOperation.java @@ -377,7 +377,7 @@ public class RecPushVoucherOperation extends AbstractOperationServicePlugIn impl QFilter voucherFilters = new QFilter("sourcebill", QCP.equals, recBill.getPkValue()); voucherFilters.and(new QFilter("billstatus",QCP.equals,"C"));//已审核 DynamicObject gl_voucher = BusinessDataServiceHelper.loadSingle(voucherName, - "id,description,sourcebill,entries,entries.account,entries.assgrp,entries.debitlocal,entries.creditlocal,entries.entrydc,entries.edescription,vouchertype", + "id,description,shjh_fjz,sourcebill,entries,entries.account,entries.assgrp,entries.debitlocal,entries.creditlocal,entries.entrydc,entries.edescription,vouchertype", voucherFilters.toArray()); if (gl_voucher != null) { @@ -400,40 +400,16 @@ public class RecPushVoucherOperation extends AbstractOperationServicePlugIn impl IT_ITEMS.put("KOSTL", KOSTL); IT_ITEMS.put("PRCTR", PRCTR); IT_ITEMS.put("SGTXT", entry.getString("edescription"));//凭证行摘要 + //凭证反记账标识判断,如果凭证上已勾选,则传X给sap + if(gl_voucher.getBoolean("shjh_fjz")){ + IT_ITEMS.put("XNEGP", "X"); + } // 设置科目 DynamicObject account = entry.getDynamicObject("account"); if (account != null) { IT_ITEMS.put("HKONT", account.getString("number")); IT_ITEMS.put("UMSKZ", JhzjUtils.getUMSKZ(account.getString("number")));//特殊总账标识 - //查找核算维度 -// DynamicObjectCollection checkItems = account.getDynamicObjectCollection("checkitementry"); -// if (!customersplit && checkItems!=null && checkItems.size()!=0){ -// //是否已经反写 -// boolean isMark = false; -// for (DynamicObject checkItem : checkItems) { -// //核算维度 -// String assTactItemName = checkItem.getString("asstactitem.name"); -// if (assTactItemName != null){ -// switch (assTactItemName){ -// case "客户-获利段": -// case "客户编码": -// IT_ITEMS.put("KUNNR", cusOrSupNumber); -// isMark = true; -// break; -// case "供应商": -// IT_ITEMS.put("LIFNR", cusOrSupNumber); -// isMark = true; -// break; -// } -// } -// if (isMark){ -// break; -// } -// } -// } - //从凭证弹性域获取客户编号 -// if(customersplit){ -// } + //查找核算维 弹性域 assgrpinfo = entry.getDynamicObject("assgrp");//核算维度(弹性域) if(assgrpinfo != null){ DynamicObjectCollection gl_assist_bd = QueryServiceHelper.query(glbdName, "asstype,assval", @@ -476,6 +452,12 @@ public class RecPushVoucherOperation extends AbstractOperationServicePlugIn impl }else if("f000056".equals(asstype)){ //分配编号 f000056 IT_ITEMS.put("ZUONR",glassistbd.getString("assval")); + }else if("f000023".equals(asstype)){ + //税码 f000023 + IT_ITEMS.put("MWSKZ",glassistbd.getString("assval")); + }else if("f000031".equals(asstype)){ + //税基 f000031 +// IT_ITEMS.put("MWSBP",glassistbd.getString("assval")); } } }