VSCode中如何查看EDI报文?

VSCode是开发人员常用的一款软件,为了降低EDI报文的阅读门槛,知行的开发人员设计了EDI插件,可以在VSCode中下载使用。

如何打开一个EDI报文——VSCode EDI插件介绍

EDI插件下载流程

进入VSCode,打开Extensions,在搜索框搜索 EDI,即可看到 Edi Support 工具。如下图示:

VSCode-EDI-extension1.png

EDI插件主要为遵循X12以及EDIFACT两种EDI国际报文标准的EDI报文提供阅读支持。

灵活地查阅报文

我们以符合X12报文标准的 850 报文为例,为大家进行演示:

安装好EDI插件之后,我们打开一个850报文,可以看到文件上方会出现多个按钮,代表不同的快捷功能。点击 Minify,将会看到如下所示的结果:

VSCode-EDI-extension2.png

850报文被展示在一行中,这种形式的文件可读性比较差,用户很难从中获取信息。

接下来点击文件上方的 Prettify 按钮,得到的结果如下:

VSCode-EDI-extension3.png

现在我们获得了可读性更高的格式,这个850报文被展开。一个850采购订单的EDI示例报文每一行的开头,由2-3个字符组成,叫做Segment节点,代表特定的业务含义。例如BEG开始的这一行代表了业务数据的开始以及单据主信息 DTM这一行代表时间信息,N1这一行代表实体信息,例如ship-to、ship-from 等信息都会被存放在这里。

或许你会注意到,上述形式每行结尾都会出现一个波浪线,代表段终止符。根据段终止符进行换行的报文拥有更强的可读性。

但或许这样的形式还不够清晰,因为把这些代表特定业务含义的节点与业务含义对应起来,要么需要查询EDI规范文档,要么需要对EDI报文足够熟悉。

完全不必担心这个问题,这时候就轮到文件上方的第三个按钮发挥作用了。我们点击 Toggle inlay hints,将这个按钮从off 切换至 on,得到如下结果:

VSCode-EDI-extension4.png

看上去可能会有些拥挤?点击上述按钮之后,会在EDI报文中对每个节点进行详细的注释。橙色高亮部分为注释,蓝色部分则为原始EDI报文。如果需要关闭注释,只需要再次点击 Toggle inlay hints,将这个按钮从on 切换至 off即可。

点击第四个按钮:知行软件,可以一键跳转至知行软件官网,我们每个工作日都会在EDI知识库中更新 EDI 相关信息。

EDI 功能
文件诊断

EDI 插件具有文件诊断功能,可以帮助用户快速诊断字段超长或者太短等问题。如下图所示,第10行,DTM02中存放的数据报错,会出现红色波浪线标识。 原因是最小长度应为8位,但实际只填写了7位。

VSCode-EDI-extension5.png

点击页面下方 PROBLEMS 中的报错,可以自动定位至报错字段。

EDI报文各个数据元素的扩展

EDI报文是基于EDI规范生成的,但在阅读过程中,如果参考EDI规范来理解报文效率太低。EDI插件提供的最新功能,只需要将鼠标定位至需要查看细节信息的数据元素中,即可查看,效果如下:

VSCode-EDI-extension6.png

点击 N1字段下的数据元素 ST,即可在弹出的方框中看到ST是EDI报文中的一个代码,标识Ship to。这个位置还可以填写的代码包括:10、11、12等。

点击RFF字段下的元素EDI Helpdesk则会看到如下提示:

VSCode-EDI-extension7.png

这个数据元素主要包含自由格式的名称,最小位数为1最大位数为60,超出这个范围则会报错。

除上述功能之外,EDI插件还支持VS Code的常用快捷键,例如:Shift + Alt +F,实现格式化等。点击弹窗最下面一行的 EDI Schema Reference,即可进入知行EDI规范查询平台,查看相应字段更加详细的信息。

VSCode-EDI-extension8.png

扩展阅读:EDI是什么?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/267100.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从零构建属于自己的GPT系列6:模型本地化部署2(文本生成函数解读、模型本地化部署、文本生成文本网页展示、代码逐行解读)

🚩🚩🚩Hugging Face 实战系列 总目录 有任何问题欢迎在下面留言 本篇文章的代码运行界面均在PyCharm中进行 本篇文章配套的代码资源已经上传 从零构建属于自己的GPT系列1:数据预处理 从零构建属于自己的GPT系列2:模型训…

【cocotb】【达坦科技DatenLord】Cocotb Workshop分享

https://www.bilibili.com/video/BV19e4y1k7EE/?spm_id_from333.337.search-card.all.click&vd_sourcefd0f4be6d0a5aaa0a79d89604df3154a 方便RFM实现 cocotb_test 替代makefile , 类似python 函数执行

JavaDay17

创建不可变集合 import java.util.Iterator; import java.util.List;public class Test {public static void main(String[] args) {/*创建不可变的List集合* "张三" "李四" "王五" "赵六*///一旦创建之后 是无法进行修改的 在下面的代码…

Nginx的location和rewrite的使用

目录 常用的Nginx 正则表达式 location location 大致可以分为三类: 精准匹配:location / {...} 一般匹配:location / {...} 正则匹配:location ~ / {...} location 常用的匹配规则 location 优先级 location 示例说明…

23种设计模式之模板方法模式(模板模式)

23种设计模式之模板方法模式(模板模式) 文章目录 23种设计模式之模板方法模式(模板模式)设计思想模板方法的优缺点模板方法模式的缺点代码解析小结 设计思想 原文:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构…

jsp文件引用的css修改后刷新不生效问题

问题 在对 JavaWeb 项目修改的过程中,发现修改了 jsp 文件引入的 css 文件的代码后页面的样式没有更新的问题。 原因 导致这个问题的原因可能是因为浏览器缓存的问题。 解决方法 下面介绍两种解决方法,供大家参考: 1、给 link 标签的 c…

件夹和文件比较软件VisualDiffer mac功能介绍

VisualDiffer mac是一款运行在MacOS上的文件夹和文件快速比较工具。VisualDiffer可以对不同文件夹中文件或文档做出比较或者比较两个文件的路径。还可以通过UNIS diff命令快速、标准和可靠的比较出各类不同的文件夹和文件结果,使用不同的颜色直观地显示。 VisualDif…

网络基础(五):网络层协议介绍

目录 一、网络层 1、网络层的概念 2、网络层功能 3、IP数据包格式 二、ICMP协议 1、ICMP的作用和功能 2、ping命令的使用 2.1ping命令的通用格式 2.2ping命令的常用参数 2.3TypeCode:查看不同功能的ICMP报文 2.4ping出现问题 3、Tracert 4、冲突域 5、…

GoLong的学习之路,进阶,微服务之序列化协议,Protocol Buffers V3

这章是接上一章,使用RPC包,序列化中没有详细去讲,因为这一块需要看的和学习的地方很多。并且这一块是RPC中可以说是最重要的一块,也是性能的重要影响因子。今天这篇主要会讲其使用方式。 文章目录 Protocol Buffers V3 背景以及概…

安装ThingBox Eclipse Plugin

1. ChatGPT问 The latest version of the ThingBox Eclipse Plugin requires Eclipse IDE 2021-06 or later. 2. PTC官网下载 MED-61378-CD-092_F000_Eclipse-Plugin-9-0-1.zip文件, 和 MED-61098-CD-085_F000_ThingWorx-Extension-SDK-8-5-0(需要账号&#xff09…

深入理解模板引擎:解锁 Web 开发的新境界(下)

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

STM32-固件打包部署

STM32-固件打包部署 Fang XS.1452512966qq.com STM32固件输出 工程上使用Keil开发STM32软件;在调试过程中,可直接编译下载;例如bootloader和APP,在调试时,可以直接下载2次;但是工程上,需要大…