找回密码
 注册账号

QQ登录

只需一步,快速开始

手机号码,快捷登录

手机号码,快捷登录

初学者课程:T3自学|T6自学|U8自学软件下载课件下载工具下载资料:通资料|U8资料|NC|培训|年结积分规则 | 使用常见问题Q&A
知识库:U8 | | NC | U9 | OA | 政务U8|U9|NCC|NC65|NC65客开|NCC客开新手必读 | 任务 | 快速增金币用友QQ群[微信群]
查看: 3799|回复: 1

[求助] 外部交换平台

[复制链接]
发表于 2018-5-3 15:18:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册账号

×
外部交换平台报 将转换后的内容输入到ERP预提单模板异常 : null



public String transformXml(List<VoucherVO> models) throws Exception {
                try {
                        // 读取模板文件
                        DocumentBuilder docBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
                        Document doc =docBuilder.parse(Configure.ErpRequestXmlTemplatePath);
                        // 由于模板文件只有 1 个 bill 节点,所以需要追加 (count - 1) 个 voucher 节点
                        Node nodeRoot = doc.getElementsByTagName("ufinterface").item(0);
                        // 设置接收者编码-公司编码
                        Node attrGroupCode = nodeRoot.getAttributes().getNamedItem("receiver");
                        attrGroupCode.setNodeValue(ClientEnvironment.getInstance().getCorporation().getPk_corp());
                        //克隆单据节点
                        Node nodeVoucher = doc.getElementsByTagName("voucher").item(0);
                        int count = models.size();
                        for (int i = 0; i < count; i++) {
                                if (i != 0) {
                                        nodeRoot.appendChild(nodeVoucher.cloneNode(true));
                                }
                        }
                        NodeList nodeVouchers = doc.getElementsByTagName("voucher");
                        for (int index = 0; index < count; index++) {
                                VoucherVO serviceRequest = models.get(index);
                                fillVoucher(nodeVouchers.item(index), serviceRequest);
                        }
                        // 将 doc 对象转换为 string 格式返回
                        Transformer tr = TransformerFactory.newInstance().newTransformer();
                        tr.setOutputProperty(OutputKeys.INDENT, "yes");
                        tr.setOutputProperty(OutputKeys.ENCODING, doc.getXmlEncoding());// 根据原文档编码设置输出文档编码Encode
                        StringWriter strWriter = new StringWriter();
                        tr.transform(new DOMSource(doc), new StreamResult(strWriter));
                        return strWriter.getBuffer().toString();
                } catch (Exception e) {
                        Logger.error("将转换后的内容输入到ERP预提单模板异常 : " + e.getMessage(), e);
                        throw e;
                }
        }


这个是哪里写错了吗
发表于 2018-5-3 22:48:06 | 显示全部楼层
过来学习下。。。。。。。。。。。。。。加油。。。。。。。。。。。。。。。。。。。。。。。。。。
回复 点赞 拍砖

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

QQ|站长微信|Archiver|手机版|小黑屋|用友之家 ( 蜀ICP备07505338号|51072502110008 )

GMT+8, 2024-11-20 01:53 , Processed in 0.043762 second(s), 8 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表