From 29a67aa578f139affa21068418002b32a6269f05 Mon Sep 17 00:00:00 2001 From: yuxueliang0813 <407010292@qq.com> Date: Fri, 23 May 2025 16:47:17 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B6=E6=AC=BE=E5=87=AD=E8=AF=81-=E5=8F=8D?= =?UTF-8?q?=E8=AE=B0=E8=B4=A6=E3=80=81=E7=A8=8E=E7=A0=81=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E6=8E=A8=E9=80=81sap?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../operate/RecPushVoucherOperation.java | 42 ++++++------------- 1 file changed, 12 insertions(+), 30 deletions(-) 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")); } } }