⌂ 首页更新 10-18 13:54

C003 后台 Debug:Node·Class·Search

Debug 进法 · 一行看 Node · 整张表看 Class · Search=SQL where + 答错过的地方

一、Debug 是什么、怎么进

Debug=C8 的后台调试入口。做配置、查问题时,进来查看数据的底细。

管理员登录 → 左下角「进入调试模式」→ 底栏 Views / Node / Class / 操作▼。

二、Node=一行数据

Node 看的是某一条数据,比如一个款式。要找单个款式,先在清单里选中那一行,再按 Fn+F8。

按 Fn+F8 和点底栏 Node 打开的是同一种页面,区别在于当前看的是哪一条。只在款式清单上点 Node,可能看到的是清单页本身;选中行再按快捷键,才是要查的那个款式。

四块信息看什么
Property它是谁:URL=身份证号(主键);Type=属于哪张表;Name=这条数据的名字
Audit谁建、谁改:Created By 看谁建的,Modified By 看谁改的
Policy各安全角色对这一行的权限,比如 View 能看、Edit 能改
Attributes每列的值:这里逐项列出字段,Value 是它实际存的值
对应:Node 的四块信息和查问题的入口。
圈画:① Property,② Audit,③ Policy,④ Attributes 的 Value,⑤ Flags,⑥ Expression。
遇到什么问题去哪里查
这条数据看不到、改不了Policy:看角色对这一行有什么权限
某个字段改不了Flags:看是否只读,再看 Expression 有没有表达式
谁改坏了Audit:看修改人
页面显示的值对不对Attributes → Value:看实际存的值

三、Flags:这个字段能不能改

Flags意思
0x0能改
0x1只读,不能手动改
0x100001只读+实时表达式,值由表达式计算
0x100001 = 0x1 + 0x100000:只读和实时表达式两个标记合在一起。

四、Class=整张表的统一规定

想看什么去哪看
Style Viewer 对整个款式表的权限Class → Access:整张表的统一规定
Style Viewer 对某一个款式的权限Node → Policy:落到这一条数据上的结果
整张表看 Class,一行看 Node。两者对应表和行,不能当成同一个东西。

Party=「谁」,这里列的基本是安全角色;旁边的权限说明它能看、能改,还是能全管。

对应:Class 看整张表,Access 看整张表的权限。
圈画:② 是 Style 这张表,⑤ 是 Access 里的 Party 和权限列表。

五、Search=SQL 的 where

Search 是按条件找数据:只写 where 条件,结果会自动给出 URL / Type / Name,不用自己列 select 要返回哪些列。

查所有款式,只写这一行:

<Node Parameter="Type" Op="EQ" Value="Style" />
这一段意思
Parameter="Type"查 Type 这一项
Op="EQ"等于
Value="Style"值是 Style(款式)

三个部分合起来是一个条件:Type 等于 Style。查出来的是一行行 Node,每行一个款式;每行 Type 都写 Style,只是在说「我属于款式表」,不是查出了一个 Class。

对应:Search 写条件,结果是一行行 Node。
圈画:① 写条件,② 点 Search,③ 看结果,④ 是条件写法的小抄;红框里的两行默认 AND。
条件写法怎么理解
写多行条件默认 AND(并且),每条都满足才会出现;旧条件没删,也会一起生效
<OR>…</OR>要「或」,把条件放进 OR
Path="Child:ProductType"顺着 ref 走到别的表,再查那边的字段,像 SQL 的 join
Op="RE"模糊查找;名字带「面」,值要写 "%面%",% 表示任意字,像 SQL 的 like
Op="NE"不等于

跨表查材料类型的名字,条件这样写:

<Attribute Path="Child:ProductType" Id="Node Name" SValue="面料" />
模糊查找要改两处:把 Op 改为 RE,还要把值改成 %面%;用 Attribute 查文本字段时,改的是 SValue。

一行 Attribute=四个空:

空例子意思
① 走哪条路Path="Child:ProductType"顺着「材料类型」这列的箭头,走到材料类型表那一行;不写 = 看自己这条
② 看哪一列Id="Node Name"到了那边看「名字」
③ 怎么比Op="NE"EQ 等于 / NE 不等于 / RE 模糊
④ 跟什么比SValue="面料"SValue 放文字;RValue 放指向某条数据;DValue 放数字时间

Material 是材料表,面料、里料、辅料都在里面;ProductType 是材料表的一列,不是一张表。全部 25 条,类型=面料 11 条,改成 NE 就是剩下 14 条。

六、答错过的地方