当前位置: 首页 > news >正文

数据库端口LookUp功能:从数据库中获取并添加数据到XML

本文将为大家介绍如何使用知行之桥EDI系统数据库端口的Lookup功能,从数据库中获取数据,并添加进输入的XML中。

使用场景:期待以输入xml中的值为判断条件从数据库中获取数据,并添加进输入xml中。

例如:接收到包含采购订单数据的xml,其中包含BuyerItemNumber,不包含SKU。数据库中已有表维护了BuyerItemNumber和SKU的对应关系。如下所示:

edi_LookUp1.png

如何将BuyerItemNumber值作为判断条件,获取到数据库表中对应的sku数据,并且添加到现有XML中呢?我们需要在知行之桥EDI系统的数据库端口中通过简单配置即可实现。以SQLSever端口为例,操作步骤如下。

创建SQLSever端口,建立连接

1.点击页面右上角的 添加 按钮,在弹框的搜索栏中搜索 SQL 即可看到 SQL Sever 端口,点击即可出现添加弹框。

edi_LookUp2.png

2.如下图所示,选择操作为Lookup,点击右下角的 创建端口 按钮。

edi_LookUp3.png

3.在SQL Sever端口的 设置 选项卡下点击 创建 按钮,填写配置信息,创建与数据库的连接。

edi_LookUp4.png

edi_LookUp5.png

数据库端口的Lookup配置
方法一:不配置示例文件,配置路径

edi_LookUp6.png

1.配置所要查询的表,即已维护BuyerItemNumber和SKU对应关系的数据库表,如:[dbo].[LookUpTest]。这里的数据库表可以在下拉列表中进行选择。
2.配置列,即需要获取的信息,可在下拉列表中进行选择,如sku。
3.输出目标,这里选择XPath,输出路径。注意:父级节点需使用根路径,需要结合输入文件进行配置。输入文件示例如下:

<LookUpTest_Header><PODate>20240101</PODate><PONumber>123456</PONumber><LookUpTest_Detail><BuyerItemNumber>99999</BuyerItemNumber><OrderQuantity>100</OrderQuantity><DeliveryDate>20240201</DeliveryDate></LookUpTest_Detail>
</LookUpTest_Header>

根据上述示例,XPath需要配置为:

左侧填写:/LookUpTest_Header/LookUpTest_Detail
右侧填写:SKU

4.过滤器,获取条件,如表中buyeritemnumber列等于输入BuyerItemNumber时获取sku列

edi_LookUp7.png

按照上述步骤设置之后,可以在 SQLSever 端口的 输入 选项卡下上传示例文件:

<LookUpTest_Header><PODate>20240101</PODate><PONumber>123456</PONumber><LookUpTest_Detail><BuyerItemNumber>99999</BuyerItemNumber><OrderQuantity>100</OrderQuantity><DeliveryDate>20240201</DeliveryDate></LookUpTest_Detail>
</LookUpTest_Header>

在 输出 选项卡中可以查看数据获取结果如下:

edi_LookUp8.png

点击右上角格式化按钮,可对文件一键格式化。可以看到这里SKU处多了一层列名,但我们的XML中不希望看到这样的结果,因此需要进行配置,使结果更加简洁。

接下来需要在当前端口中的高级设置选项卡下,在页面末尾找到特殊设置,在其他设置中配置如下:singlecolumnlookupxpathincludesleaf=true,点击保存变更,即可实现在输出中去除列名。

edi_LookUp9.png

重新上传上文中的输入文件,可以在输出选项卡中打开新的文件,内容如下:

edi_LookUp10.png

如上所示,我们已通过buyeritemnumber字段信息获取到其对应的sku信息,并成功将其添加到原始XML文件中。

方法二:配置示例文件

1.配置示例文件

edi_LookUp11.png

在 设置 选项卡->操作->配置示例文件,示例文件需要和输入文件保持一致,如下:

<LookUpTest_Header><PODate></PODate><PONumber></PONumber><LookUpTest_Detail><BuyerItemNumber></BuyerItemNumber><OrderQuantity></OrderQuantity><DeliveryDate></DeliveryDate></LookUpTest_Detail>
</LookUpTest_Header>

2.配置所要查询的表,即已维护BuyerItemNumber和SKU对应关系的数据库表,如:[dbo].[LookUpTest]。这里的数据库表可以在下拉列表中进行选择。
3.配置列,即需要获取的信息,可在下拉列表中进行选择,如sku。
4.输出目标,这里选择XPath,输出路径。

edi_LookUp12.png

由于我们已经设置了示例文件,这里只需要在下拉列表中选择根路径即可。我们需要sku信息出现在LookUpTest_Detail下,因此需要鼠标点击LookUpTest_Detail,然后在右侧填写:SKU。

5.过滤器,获取条件,如表中buyeritemnumber列等于输入BuyerItemNumber时获取sku列

edi_LookUp13.png

注意,仍然需要在当前端口中的高级设置选项卡下,在页面末尾找到特殊设置,在其他设置中配置如下:singlecolumnlookupxpathincludesleaf=true,点击保存变更,即可实现在输出中去除列名。

输入选项卡下,可以上传测试文件,在输出选项卡下查看获取结果。

如果您希望了解有关EDI对接的相关信息,欢迎交流。

阅读原文

相关文章:

数据库端口LookUp功能:从数据库中获取并添加数据到XML

本文将为大家介绍如何使用知行之桥EDI系统数据库端口的Lookup功能&#xff0c;从数据库中获取数据&#xff0c;并添加进输入的XML中。 使用场景&#xff1a;期待以输入xml中的值为判断条件从数据库中获取数据&#xff0c;并添加进输入xml中。 例如&#xff1a;接收到包含采购…...

视频联网共享平台LntonCVS视频监控汇聚平台视频云解决方案

LntonCVS流媒体平台是一款遵循国家GB28181标准协议的先进视频监控与云服务平台。该平台设计独特&#xff0c;能够同时接入并处理多路设备的视频流&#xff0c;支持包括RTSP、RTMP、FLV、HLS、WebRTC在内的多种视频流格式的分发。其功能丰富多样&#xff0c;涵盖了视频直播监控、…...

深入探索Python中的`__slots__`类属性:优化内存与限制灵活性

深入探索Python中的__slots__类属性&#xff1a;优化内存与限制灵活性 在Python编程的广阔领域中&#xff0c;性能优化总是开发者们关注的焦点之一。特别是在处理大量对象或资源受限的环境中&#xff0c;减少内存占用和提高访问速度显得尤为重要。Python的__slots__类属性正是…...

llama 2 改进之 RMSNorm

RMSNorm 论文&#xff1a;https://openreview.net/pdf?idSygkZ3MTJE Github&#xff1a;https://github.com/bzhangGo/rmsnorm?tabreadme-ov-file 论文假设LayerNorm中的重新居中不变性是可有可无的&#xff0c;并提出了均方根层归一化(RMSNorm)。RMSNorm根据均方根(RMS)将…...

Matlab【光伏预测】基于雪融优化算法SAO优化高斯过程回归GPR实现光伏多输入单输出预测附代码

% 光伏预测 - 基于SAO优化的GPR % 数据准备 % 假设有多个输入特征 X1, X2, …, Xn 和一个目标变量 Y % 假设数据已经存储在 X 和 Y 中&#xff0c;每个变量为矩阵&#xff0c;每行表示一个样本&#xff0c;每列表示一个特征 % 参数设置 numFeatures size(X, 2); % 输入特征的…...

ES6 模块

ES6 模块学习记录 ES6&#xff08;ECMAScript 2015&#xff09;模块是JavaScript官方的标准模块系统。它允许开发者以模块化的方式编写代码&#xff0c;模块可以在不同的文件之间进行组织和重用。 基本特征 默认导出&#xff08;Default Exports&#xff09;&#xff1a;每个…...

谷粒商城-全文检索-ElasticSearch

1.简介 一个分布式的开源搜索和分析引擎,可以 秒 级的从海量数据中检索 主要功能:做数据的检索和分析(MySQL专攻于数据的持久化存储与管理CRUD达到百万以上的数据MSQL就会很慢,海量数据的检索和分析还是要用ElasticSearch) 用途:我们电商项目里的所有的检索功能都是由Elasti…...

Java的LinkedHashMap 源码解析

LinkedHashMap 是 Java 中的一种有序 Map&#xff0c;它扩展了 HashMap&#xff0c;提供了有序的元素存储方式。在 LinkedHashMap 中&#xff0c;元素的有序性可以按照插入顺序或访问顺序来维护&#xff0c;而这个有序性是通过维护一个双向链表来实现的&#xff0c;这也是实现 …...

Linux系统及常用指令

目录 1、什么是Linux系统 2、为什么要用Linux系统 3、Linux系统的种类 4、如何安装Linux系统 5、常见的适配器种类 6、学习第一个Linux指令 7、安装ssh客户端软件 8、Linux系统的目录结构 9、Linux的常用命令 9.1 目录切换命令 9.2 查看目录下的内容 9.3 查看当前…...

Mac Electron 应用如何进行签名(signature)和公证(notarization)?

最近很多客户反映&#xff0c;从官网下载的Mac Electron应用打不开&#xff0c;直接报病毒&#xff0c;类似于这种&#xff1a; 这是因为在MacOS 10.14.5之后&#xff0c;如果应用没有在苹果官方平台进行公证notarization(我们可以理解为安装包需要审核&#xff0c;来判断是否存…...

【C++ | 抽象类】纯虚函数 和 抽象基类,为什么需要抽象基类

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; &#x1f923;本文内容&#x1f923;&a…...

DP(7) | 打家劫舍① | Java | LeetCode 198, 213, 337 做题总结(未完)

打家劫舍问题 来源于代码随想录&#xff1a;https://programmercarl.com/0198.%E6%89%93%E5%AE%B6%E5%8A%AB%E8%88%8D.html#%E6%80%9D%E8%B7%AF ① 确定dp数组&#xff08;dp table&#xff09;以及下标的含义 dp[i]&#xff1a;考虑下标i&#xff08;包括i&#xff09;以内的房…...

人工智能算法工程师(中级)课程17-模型的量化与部署之剪枝技巧与代码详解

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下人工智能算法工程师(中级)课程17-模型的量化与部署之剪枝技巧与代码详解。模型剪枝是深度学习领域中一项关键的技术&#xff0c;旨在减少神经网络中的冗余权重&#xff0c;从而降低计算成本和内存占用&#xff0c;同…...

JavaScript 实例:掌握编程技巧

JavaScript 实例:掌握编程技巧 JavaScript 是一种广泛使用的编程语言,它为网页添加交互性,是现代网络开发的重要组成部分。本文将通过一系列实例,帮助您更好地理解和掌握 JavaScript 的核心概念和编程技巧。 基础实例:变量和数据类型 首先,让我们从最基础的开始。Java…...

自己做小项目时,配置的Maven需要用阿里云私服加速Jar包的下载

在我的IDEA中&#xff0c;maven配置在了这个地址&#xff0c;然后我需要去这个地址下找到settings.xml的maven配置文件来配置以下的阿里云私服地址来加速jar包的下载&#xff01;【不然就是下N年很慢&#xff01;】...

Linux笔记之time命令测量命令的执行时间

Linux笔记之time命令测量命令的执行时间 在Linux中&#xff0c;time命令用于测量命令的执行时间。这对于分析和优化脚本或程序的性能非常有用。time命令会显示三个主要时间指标&#xff1a; real: 从命令开始到结束的实际时间&#xff08;也称为挂钟时间&#xff09;。user: …...

《基于 CDC、Spark Streaming、Kafka 实现患者指标采集》

&#x1f4e2; 大家好&#xff0c;我是 【战神刘玉栋】&#xff0c;有10多年的研发经验&#xff0c;致力于前后端技术栈的知识沉淀和传播。 &#x1f497; &#x1f33b; CSDN入驻不久&#xff0c;希望大家多多支持&#xff0c;后续会继续提升文章质量&#xff0c;绝不滥竽充数…...

重要的单元测试

&#x1f47d;System.out.println(“&#x1f44b;&#x1f3fc;嗨&#xff0c;大家好&#xff0c;我是代码不会敲的小符&#xff0c;目前工作于上海某电商服务公司…”); &#x1f4da;System.out.println(“&#x1f388;如果文章中有错误的地方&#xff0c;恳请大家指正&…...

什么是diff算法?

Diff算法&#xff0c;全称为Difference算法&#xff0c;是一种用于比较和查找两个对象&#xff08;如文本、源代码、数据结构或任何形式的字符串&#xff09;之间差异的算法。它在多个领域有着广泛的应用&#xff0c;包括但不限于前端开发、版本控制系统、协同编辑工具等。以下…...

BUUCTF逆向wp [MRCTF2020]Transform

第一步 查壳。该题为64位。 第二步 进入主函数&#xff0c;跟进dword_40F040,它应该与关键字符串有关 分析一下&#xff1a; 初始化和输入 sub_402230(argc, argv, envp); 这行可能是一个初始化函数&#xff0c;用于设置程序环境或处理命令行参数。具体功能不明&#xff0c…...

FLUX.1-dev-fp8-dit文生图+SDXL_Prompt风格效果展示:多分辨率适配(1024x1024/768x1344)

FLUX.1-dev-fp8-dit文生图SDXL_Prompt风格效果展示&#xff1a;多分辨率适配&#xff08;1024x1024/768x1344&#xff09; 你见过能同时驾驭方形海报和竖屏手机壁纸的AI画图工具吗&#xff1f;今天要聊的FLUX.1-dev-fp8-dit模型&#xff0c;配合SDXL Prompt风格插件&#xff0…...

Agent能为中小企业降本增效吗?深度拆解AI Agent在企业智能自动化的落地路径

在2026年这一关键的时间节点上&#xff0c;AI Agent能否为中小企业实现实质性的降本增效&#xff0c;已经从一个理论命题转变为大规模的实践成果。随着大模型技术的深度演进&#xff0c;AI Agent不再仅仅是简单的对话机器人&#xff0c;而是进化为具备自主规划、决策与执行能力…...

高效智能的百度网盘提取码查询工具:baidupankey使用指南

高效智能的百度网盘提取码查询工具&#xff1a;baidupankey使用指南 【免费下载链接】baidupankey 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 在数字化时代&#xff0c;百度网盘已成为我们存储和分享文件的重要平台。然而&#xff0c;加密分享链接的提…...

保姆级教程:在Ubuntu上复现‘easy溯源’靶场,手把手教你分析反弹Shell和内网穿透痕迹

在Ubuntu上复现‘easy溯源’靶场&#xff1a;从环境搭建到痕迹分析实战指南 当你第一次接触应急响应时&#xff0c;是否曾被各种专业术语和复杂场景搞得晕头转向&#xff1f;本文将带你从零开始&#xff0c;在Ubuntu系统上完整复现一个名为easy溯源的靶场环境。这不是简单的解题…...

PyTorch 3.0静态图分布式训练:如何用3行torch.compile + 2行DTensor替代自研调度器?一线大厂已全面切换

第一章&#xff1a;PyTorch 3.0静态图分布式训练概览 PyTorch 3.0 引入了原生静态图&#xff08;Static Graph&#xff09;支持&#xff0c;通过 TorchDynamo Inductor 后端实现高效图捕获与跨设备编译&#xff0c;为大规模分布式训练提供低开销、高一致性的执行基础。静态图模…...

突破GEE内置限制:将本地Python机器学习模型部署至云端

1. 为什么需要将本地模型部署到GEE平台 Google Earth Engine&#xff08;GEE&#xff09;作为全球领先的地理空间分析平台&#xff0c;虽然内置了丰富的遥感数据处理算法&#xff0c;但在机器学习模型方面仍然存在明显短板。我去年在做内蒙古草原退化监测项目时就深有体会——G…...

OpenClaw技能市场巡礼:Qwen3-32B生态实用工具

OpenClaw技能市场巡礼&#xff1a;Qwen3-32B生态实用工具 1. 为什么需要技能市场&#xff1f; 第一次接触OpenClaw时&#xff0c;我被它的基础能力震撼——能像人类一样操作我的电脑&#xff0c;完成文件整理、网页搜索等任务。但真正让我决定长期使用的&#xff0c;是发现它…...

5分钟搞定!用PySide2+Python快速搭建串口助手(附完整源码)

5分钟搞定&#xff01;用PySide2Python快速搭建串口助手&#xff08;附完整源码&#xff09; 1. 为什么选择PySide2开发串口工具&#xff1f; 在嵌入式开发和物联网项目中&#xff0c;串口调试工具就像工程师的"瑞士军刀"。传统方案如C/QT开发周期长&#xff0c;而Py…...

ASan实战:5种常见内存错误诊断与修复指南(附GCC/Clang编译命令)

ASan实战&#xff1a;5种常见内存错误诊断与修复指南&#xff08;附GCC/Clang编译命令&#xff09; 在C/C开发中&#xff0c;内存错误如同潜伏的暗礁&#xff0c;随时可能让程序沉没。AddressSanitizer&#xff08;ASan&#xff09;作为Google推出的内存错误检测工具&#xff…...

PyTorch训练二分类模型时,你的损失函数为什么突然变成NaN了?排查BCELoss的5个坑

PyTorch训练二分类模型时&#xff0c;你的损失函数为什么突然变成NaN了&#xff1f;排查BCELoss的5个坑 深夜的调试台前&#xff0c;咖啡杯早已见底&#xff0c;屏幕上那个刺眼的"nan"却依然顽固地停留在损失值的位置。这不是第一次&#xff0c;也不会是最后一次——…...