在PCB规则引擎开发中,JavaScript V8引擎是处理业务逻辑的, 当然业务逻辑需要数据支撑才行,  即需有将数据推进入到V8引擎。目前这边数据传输到JavaScript V8引擎以C# Model结构或序列化为Json文本来进行数据传递。然对于规则维护人员来说,传递过来的数据结构是什么样的,其实并不是那么清楚明确,因为这个Model对象结构在序列化JSON文本前,它的数据结构已定义好,到了用户查看JSON样例时就是一串文本,虽然JSON简洁和清晰的层次结构,但规则维护来说还是不到足够的清晰明朗,如果对传过来的结构都不清晰,怎么让维护规则的人员更好的维护规则呢,所以初衷是为了更好的用户体验,将JSON文本转为Tree树结构在用户端更好的展示与查看数据结构。

一.原JSON文本

看似结构清晰,实则用户交互性操作性差

{
"FlowId" : 11985989,
"TechNo" : "EN_04",
"TechName" : "沉金",
"GlobalOrder" : 68,
"FlowFlag" : 0,
"FlowLevel" : 2,
"Remark" : "",
"Params" : [{
"ItemNo" : "0001",
"ItemName" : "最小镍厚",
"ItemParam" : "3.00",
"Unit" : "μm",
"DisplayOrd" : 1
}, {
"ItemNo" : "0003",
"ItemName" : "最大镍厚",
"ItemParam" : "8.00",
"Unit" : "μm",
"DisplayOrd" : 2
}, {
"ItemNo" : "0002",
"ItemName" : "最小金厚",
"ItemParam" : "0.050",
"Unit" : "μm",
"DisplayOrd" : 3
}, {
"ItemNo" : "0004",
"ItemName" : "最大金厚",
"ItemParam" : "0.100",
"Unit" : "μm",
"DisplayOrd" : 4
}, {
"ItemNo" : "0007",
"ItemName" : "CS面PNL面积(含孔)",
"ItemParam" : "44.13",
"Unit" : "inch2",
"DisplayOrd" : 5
}, {
"ItemNo" : "0006",
"ItemName" : "SS面PNL面积(含孔)",
"ItemParam" : "48.90",
"Unit" : "inch2",
"DisplayOrd" : 6
}, {
"ItemNo" : "0005",
"ItemName" : "沉金最小间距",
"ItemParam" : "6.00",
"Unit" : "mil",
"DisplayOrd" : 7
}],
"ExpTables" : null,
"ChildFlows" : []
}

二.更改后JSON文本查看

PCB 规则引擎之JSON对象查看器的更多相关文章

  1. PCB 规则引擎之脚本语言JavaScript应用评测

    世界上没有好做的软件,觉得好做,只是你的系统简单而已,而不是哪个行业简单,特别像我们PCB制造企业务逻辑的很复杂的,仅仅靠决策树中的每个节点布置决策逻辑是不能满足要求的,所以我们在制作PCB规则引擎必 ...

  2. 推荐一款JSON字符串查看器

    JSON Viewer是一款方便易用的Json格式查看器.Json格式的数据阅读性很差,如果数据量大的话再阅读方面会十分困难,有了这软件,问题就解决了,能够快速把Json字符串排列规则的树结构,支持对 ...

  3. OLE/COM 对象查看器 & OLE常用术语

    "OLE/COM Object Viewer"(OLE/COM 对象查看器)查看你系统上安装的所有 COM 对象时,是一个非常便利的工具. 它是 Windows 2000 资源套件 ...

  4. PCB 围绕CAM自动化,打造PCB规则引擎

    AutoCAM自动化平台,前端管理订单,而后端执行任务,前端UIl界面有板厚,铜厚,板材,表面处理,层数等信息,而这些信息并不是后端最终所需要的信息后.拿钻孔补偿来说,后端需要的是钻孔补偿值,但前端并 ...

  5. PCB 规则引擎之编辑器(语法着色,错误提示,代码格式化)

    对于一个规则引擎中的脚本代码编辑器是非常关键的,因为UI控件直接使用对象是规则维护者,关系到用户体验,在选用脚本编辑器的功能时除了满足代码的编辑的基本编辑要求外,功能还需要包含;语法着色,错误提示,代 ...

  6. Drools规则引擎-如果Fact对象参数为null如何处理

    问题场景 在技术交流群(QQ:715840230)中有同学提出这样的问题: 往kiesession里面传入fact,如果不做输入检查fact里面有些字段可能是null值.但是如果在外面做输入检查,规则 ...

  7. Navi.Soft30.产品.Net对象查看器.操作手册

    1系统简介 1.1功能简述 在软件开发过程中,我们会编写各种类以及创建类的属性,方法,事件等.特别是第三方控件或组件,刚拿到手时,若没有完善的开发文档,很难下手.这时,若是可以查看这些DLL的成员对象 ...

  8. [z]规则引擎

    https://www.ibm.com/developerworks/cn/java/j-drools/ 使用声明性编程方法编写程序的业务逻辑 使用规则引擎可以通过降低实现复杂业务逻辑的组件的复杂性, ...

  9. vs2008控件查看器

    使用 OLE/COM 对象查看器 通过读取控件的类型库,OLE/COM 对象查看器使您得以查看控件的接口. 使用 OLE/COM 对象查看器 单击“工具”菜单上的“OLE/COM 对象查看器”或在命令 ...

随机推荐

  1. Spring Boot 与消息

    一.消息概述 在大多数应用中,可以通过消息服务中间件来提升系统的异步通信.扩展解耦和流量削峰等能力. 当消息发送者发送消息后,将由消息代理接管,消息代理保证消息传递到指定目的地. 消息队列主要有两种形 ...

  2. WebBrowser之获取跳转页面的Document接口源码

    问题由来是这样的,今天帮一个网友解决问题,说从VC驿站下载了一个源码,程序的功能主要是在对话框上面放置了一个WebBrowser控件,程序启动的时候默认调用这句代码: m_web.Navigate(_ ...

  3. Game Rank(NCPC 2016 大模拟)

    题目: The gaming company Sandstorm is developing an online two player game. You have been asked to imp ...

  4. 3. Python中的分支判断、循环

    本文利用的是Python 3.x版本,建议学习3.x版本 Python中的分支判断.循环 1. 分支条件判断 1.1 比较操作 以下是数之间常见的比较操作,例如5>3就是数学意义上的比较,5是大 ...

  5. c++行事准则

    1.c++包含多种编程范式,每种范式遵循不同的准则: 2.除了#include和#ifdef之流,其他预处理器别用,多用enum和const: 3.函数声明定义多用const:

  6. Java基础学习总结(79)——Java本地接口JNI详解

    对于java程序员来说,java语言的好处和优点,我想不用我说了,大家自然会说出很多一套套的.但虽然我们作为java程序员,但我们不得不承认java语言也有一些它本身的缺点.比如在性能.和底层打交道方 ...

  7. noip模拟赛 铺瓷砖

    [问题描述]有一面很长很长的墙. 你需要在这面墙上贴上两行瓷砖. 你的手头有两种不同尺寸的瓷砖, 你希望用这两种瓷砖各贴一行.瓷砖的长可以用分数表示,贴在第一行的每块瓷砖长度为A/B贴在第二行的每块瓷 ...

  8. hdu 1269 求连通图的模板题

    #include<stdio.h> #include<string.h> #include<iostream>//只存在一个连通分量 #include<str ...

  9. [bzoj1001]狼爪兔子[平面图的最小割等于其对偶图的最短路]

    一定要仔细算内存,,,又少写一个零.. #include <bits/stdc++.h> using namespace std; template<const int _n,con ...

  10. spark之scala快速入门

    scala和java都是在jvm之上的语言,相对来讲,scala热度比较低,其实并不是一个特别好的语言选择. 原因倒不是因为scala本身的缺点,而是使用人群不够多,论坛和社区不够活跃.这就跟社交软件 ...