VSCode中如何查看EDI报文?

news2024/12/23 1:42:34

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.coloradmin.cn/o/1303409.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

STM32-01-认识单片机

文章目录 一、单片机简介二、Cortex-M系列介绍三、初识STM32四、STM32原理图设计五、搭建开发环境六、STM32初体验七、MDK5使用技巧 一、单片机简介 单片机是什么? 单片机:Single-Chip Microcomputer,单片微型计算机,是一种集成电…

Keepalived+Nginx实现高可用(上)

一、背景与简介 为了服务的高可用性,避免单点故障问题,通常我们使用"冗余设计思想"进行架构设计。冗余设计思想,本质就是将同一个应用或者服务放置在多台不同的服务器上[鸡蛋不放在同一个篮子里],这样减少整体服务宕机的…

2023 年山东省职业院校技能大赛(高等职业教育) “信息安全管理与评估”样题

2023 年山东省职业院校技能大赛(高等职业教育) “信息安全管理与评估”样题 目录 任务 1 网络平台搭建(50 分) 任务 2 网络安全设备配置与防护(250 分) 模块二 网络安全事件响应、数字取证调查、应用程序安…

深入探索 Spring Boot:简化开发,加速部署的全方位利器

目录 导言 1. 自动配置(Auto-Configuration) 2. 起步依赖(Starter Dependencies) 3. 嵌入式 Web 服务器 4. Actuator 5. 外部化配置 6. 简化的安全性配置 7. Spring Boot CLI 8. Spring Boot DevTools 导言 在当今软件开…

散点图直方图折线图的替代

散点图直方图折线图的替代 seaborn官网 数据科学数据可视化,散点图 直方图 折线图的新方法 1.hexbinplot https://seaborn.pydata.org/examples/hexbin marginals.html相当于散点图做了聚合/分箱,使数据的分布展示更明显。Library: seaborn 2.瀑布图展示…

Pytorch-LSTM轴承故障一维信号分类(一)

目录 前言 1 数据集制作与加载 1.1 导入数据 第一步,导入十分类数据 第二步,读取MAT文件驱动端数据 第三步,制作数据集 第四步,制作训练集和标签 1.2 数据加载,训练数据、测试数据分组,数据分batch…

Qt Widgets 绘图行为逐步分析拆解

Qt 是目前C语言首选的框架库。之所以称为框架库而不单单是GUI库,是因为Qt提供了远远超过GUI的功能封装,即使不使用GUI的后台服务,也可以用Qt大大提高跨平台的能力。 仅就界面来说,Qt 保持各个平台绘图等效果的统一,并…

【EMNLP 2023】面向垂直领域的知识预训练语言模型

近日,阿里云人工智能平台PAI与华东师范大学数据科学与工程学院合作在自然语言处理顶级会议EMNLP2023上发表基于双曲空间和对比学习的垂直领域预训练语言模型。通过比较垂直领域和开放领域知识图谱数据结构的不同特性,发现在垂直领域的图谱结构具有全局稀…

Flink之迟到的数据

迟到数据的处理 推迟水位线推进: WatermarkStrategy.<Event>forBoundedOutOfOrderness(Duration.ofSeconds(2))设置窗口延迟关闭&#xff1a;.allowedLateness(Time.seconds(3))使用侧流接收迟到的数据: .sideOutputLateData(lateData) public class Flink12_LateDataC…

【华为数据之道学习笔记】3-9元数据治理面临的挑战

华为在进行元数据治理以前&#xff0c;遇到的元数据问题主要表现为数据找不到、读不懂、不可信&#xff0c;数据分析师们往往会陷入数据沼泽中&#xff0c;例如以下常见的场景。 某子公司需要从发货数据里对设备保修和维保进行区分&#xff0c;用来不对过保设备进行服务场景分析…

uniapp - 简单版本自定义tab栏切换

tab切换是APP开发最常见的功能之一&#xff0c;uniapp中提供了多种形式的tab组件供我们使用。对于简单的页面而言&#xff0c;使用tabbar组件非常方便快捷&#xff0c;可以快速实现底部导航栏的效果。对于比较复杂的页面&#xff0c;我们可以使用tab组件自由定义样式和内容 目录…

Spring 的缓存机制【记录】

一、背景 在最近的业务需求开发过程中遇到了“传说中”的循环依赖问题&#xff0c;在之前学习Spring的时候经常会看到Spring是如何解决循环依赖问题的&#xff0c;所谓循环依赖即形成了一个环状的依赖关系&#xff0c;这个环中的某一个点产生不稳定变化都会导致整个链路产生不…

WPF仿网易云搭建笔记(5):信息流控制之IOC容器

文章目录 专栏和Gitee仓库前言IOC容器Prism IOC使用声明两个测试的服务类MainWindow IOC 注入[单例]MainWindow里面获取UserController无法使用官方解决方案 使用自定义IOC容器&#xff0c;完美解决既然Prism不好用&#xff0c;直接上微软的IOC解决方案App.xaml.csViewModel里面…

axios 基础的 一次封装 二次封装

一、平常axios的请求发送方式 修改起来麻烦的一批 代码一大串 二、axios的一次封装 我们会在src/utils创建一个request.js的文件来存放我们的基地址与拦截器 /* 封装axios用于发送请求 */ import axios from axios/* (1)request 相当于 Axios 的实例对象 (2)为什么要有reque…

python自动化测试实战 —— WebDriver API的使用

软件测试专栏 感兴趣可看&#xff1a;软件测试专栏 自动化测试学习部分源码 python自动化测试相关知识&#xff1a; 【如何学习Python自动化测试】—— 自动化测试环境搭建 【如何学习python自动化测试】—— 浏览器驱动的安装 以及 如何更…

Web安全-SQL注入【sqli靶场第11-14关】(三)

★★实战前置声明★★ 文章中涉及的程序(方法)可能带有攻击性&#xff0c;仅供安全研究与学习之用&#xff0c;读者将其信息做其他用途&#xff0c;由用户承担全部法律及连带责任&#xff0c;文章作者不承担任何法律及连带责任。 0、总体思路 先确认是否可以SQL注入&#xff0…

深拷贝、浅拷贝 react的“不可变值”

知识获取源–晨哥&#xff08;现实中的人 嘿嘿&#xff09; react中如果你想让一个值始终不变 或者说其他操作不影响该值 它只是作用初始化的时候 使用了浅拷贝–改变了初始值 会改变初始值(selectList1) 都指向同一个地址 const selectList1 { title: 大大, value: 1 };con…

ES-分析器

分析器 两种常用的英语分析器 1 测试工具 #可以通过这个来测试分析器 实际生产环境中我们肯定是配置在索引中来工作 GET _analyze {"text": "My Moms Son is an excellent teacher","analyzer": "english" }2 实际效果 比如我们有下…

前端框架(Front-end Framework)和库(Library)的区别

聚沙成塔每天进步一点点 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 欢迎来到前端入门之旅&#xff01;感兴趣的可以订阅本专栏哦&#xff01;这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发…

基于OpenCV+CNN+IOT+微信小程序智能果实采摘指导系统——深度学习算法应用(含python、JS工程源码)+数据集+模型(三)

目录 前言总体设计系统整体结构图系统流程图 运行环境Python环境TensorFlow 环境Jupyter Notebook环境Pycharm 环境微信开发者工具OneNET云平台 模块实现1. 数据预处理1&#xff09;爬取功能2&#xff09;下载功能 2. 创建模型并编译1&#xff09;定义模型结构2&#xff09;优化…