界面定义
- 布局
- 数据集布局
<LAYOUT TYPE="DS" DSCODE=""
WIDTH="" HEIGHT=’’ CAPTION="尺码明细"/>
TYPE :类型必须是"DS"
DSCODE:数据集代码,可以编辑数据集,浏览数据集
*******废弃********
<LAYOUT TYPE="GRID/PANEL" DSINDEX="2" DSTYPE="EDIT/BROWSE" HEIGHT="" WIDTH="%70" CAPTION="款式颜色"/>
- 编辑菜单定义
<MENU MENUERI="..GMTBALL" MENUACTION="DEFAULT" DOMAINMENU=""/>
打开编辑界面时,除了显示编辑菜单外,还要显示与被编辑实体相关的其他功能的菜单
MENUERI: 菜单属性的ERI
MENUACTION :菜单属性的对应的ACTION
DOMAINMENU:默认为通用编辑菜单,如果设定了值,前台需要根据设定的值选择菜单。
如果没有定义<MENU> 标记编辑将隐藏菜单。 如果没有指定MENUERI 将不显示全局菜单
主题域菜单类型:
single-edit : 只显示修改和保存菜单
- 编辑布局(客)
<LAYOUT MINHEIGHT="1000">
编辑数据集的布局定义
MINHEIGHT :布局总体高度的控制,如果没有指定,占满整个工作区域,制定后,超出工作区域后可以垂直滚动
<EDLAYOUT TYPE="PAGE">
编辑界面中左下方,明细表部分的定义
<LAYOUT TYPE="HORIZON" TABCAPTION="直接采购入库单" SPLITER="FALSE">
<LAYOUT TYPE="GRID" WIDTH="%70" HEIGHT="%100" DSTYPE="EDIT" DSINDEX="2" CAPTION="直接采购入库单"/>
<LAYOUT TYPE="GRID" WIDTH="%30" HEIGHT="%100" DSTYPE="EDIT" DSINDEX="3" CAPTION="尺码"/>
</LAYOUT>
布局元素的定义
- TYPE :
布局的类型
HORIZON 水平排列;
VERTICAL 竖直排列,
PAGE,TABS 页面布局。
BOX
TILE
编辑特有的布局————————
GRID,PANEL,DS 都是数据集格式,
TREE: 数据集树类型
BUTTONPANEL:按钮面板类型
WEBPAGE:网页类型的布局
- 对于HORIZON 和VERTICAL 下面只能有两个子LAYOUT,如果其中的一个高度(宽度)固定,只要定义这个高度就可以。 如果两个都按照指定了百分比,则按比例分割,否则只需要定义一个高度(VERTICAL)或 宽度(HORIZON),另外一个自动拉伸。 如果都没有指定高度或宽度,则按50%平均分配
- 对于GRID和PANEL,DS 下面不能再有子标记;
- TABCAPTIOIN : 布局页的标题,仅用于PAGE,TABS类型
- CAPTION :布局项的标题特定的布局显示
- HEIGHT: 在VERTICAL 布局中,布局项所占用的高度比例(100%以内整数,百分号可以放在数字前或后,bl必须放在前面),或绝对竖直。
- WIDTH: 在HORIZON布局中,布局项所占用的宽度比例(100%以内整数,百分号可以放在数字前或后),或绝对竖直。
TILE 布局独有的属性,组合视图中使用
DIRECTION 子元素的流动方向,默认为 vertical
ITEMHEIGHT 每个单元格的高度,默认为100
ITEMWIDTH每个单元格的高度,默认为150
ROW ,COL 行列数 按照全屏计算条目高度
GAP 子条目之间的距离,默认为10
如果设定了ITEMHEIGHT,ITEMWIDTH 忽略ROW和COL
条目中
HEIGHTRATIO:纵向的占比
WIDTHRATIO:横向的占比
编辑有的布局属性
DSCODE:数据集代码,指定后可以替代DSTYPE和DSINDEX
DSTYPE: BROWSE或EDIT 两个值,分别是EDITDS 或BROWSEDS 下的数据集
DSINDEX :数据集的在BROWSEDS 或EDITDS中的索引,从1开始。
</EDLAYOUT>
<BRLAYOUT TYPE="PAGE" WIDTH="400">
编辑界面右侧的界面的定义,此部分定义为可选择,如果不出现,则编辑界面的右侧将不出现布局项。
<LAYOUT TYPE="GRID" WIDTH="100" HEIGHT="20" DSTYPE="BROWSE" DSINDEX="3" CAPTION="归还记录" TABCAPTION="参考信息"/>
此部分定义同EDLAYOUT
</BRLAYOUT>
</LAYOUT>
<RELATIONS>
<LAYOUT>
<EDLAYOUT TYPE="PAGE" CLIENT="TRUE">
<LAYOUT TYPE="HORIZON" CAPTION="业务数据" WIDTH="%60" TABCAPTION="业务数据">
<LAYOUT TYPE="GRID" WIDTH="%30" HEIGHT="%50" DSTYPE="EDIT" DSINDEX="2" CAPTION="供应商" TABCAPTION="业务数据"/>
<LAYOUT TYPE="TABS" HEIGHT="%50" WIDTH="%70">
<LAYOUT TYPE="GRID" WIDTH="70" HEIGHT="%50" DSTYPE="EDIT" DSINDEX="4" CAPTION="仓库和产品明细" TABCAPTION="二维数据"/>
<LAYOUT TYPE="GRID" WIDTH="%40" HEIGHT="%50" DSTYPE="EDIT" DSINDEX="3" CAPTION="一维信息" TABCAPTION="一维数据"/>
</LAYOUT>
</LAYOUT>
</EDLAYOUT>
</LAYOUT>
下图中标注的内容就是TABS 类型的Layout的定义。
自由布局可以与 <EDLAYOUT/> 编辑类型相互替代,编辑类型默认主编辑数据集是在布局的最顶端,而且不需要在布局中进行设置,自由布局则所有的数据集都必须在布局中说明。其下的各种明细子布局类型可以是各种类型的布局(vertiacal ,horizon,panel,grid) 等。
定义格式如下:
<FRLAYOUT>
<LAYOUT TYPE="VERTICAL" CAPTION="业务数据" WIDTH="100" TABCAPTION="业务数据">
</LAYOUT>
</FRLAYOUT>
<LAYOUT TYPE="BUTTONPANEL" CAPTION="" HEIGHT="80" WIDTH="100" >
<BUTTON ENABLESTATUS="ALL" VERBS="EdtNew" X="5" Y="10" HEIGHT="20" WIDTH="80" CAPTION="新建" SIZERATION="0,0" DATASET="" IDEXP="" ENABLEEXP=""/>
<BUTTON ENABLESTATUS="NEW~MODIFY" VERBS="EdtSave" X="5" Y="30" HEIGHT="20" WIDTH="80" CAPTION="保存" SIZERATION="0,0" DATASET="" IDEXP="" ENABLEEXP=""/>
<BUTTON ENABLESTATUS="VIEW" VERBS="Edtmodify" X="5" Y="50" HEIGHT="20" WIDTH="80" CAPTION="修改" SIZERATION="0,0" DATASET="" IDEXP="" ENABLEEXP=""/>
</LAYOUT>
说明:
LAYOUT TYPE="BUTTONPANEL" : 按钮面板
HEIGHT :面板高度
WIDTH :面板宽度
按钮定义
<BUTTON ENABLESTATUS="ALL" VERBS="EdtNew" X="5" Y="10" HEIGHT="20" WIDTH="80" CAPTION="新建" SIZERATION="0,0" DATASET="" IDEXP="" IDERI=“” ENABLEEXP="" LINK=’{}’ />
ENABLESTATUS:可用的编辑状态 ,其值有, ALL,NEW,MODIFY,VIEW 四个关键词的组合,ALL 所有状态下可以用,
New 新建状态下可以用,modify 状态可以用, view 查看状态可以用。
X="5" Y="10" HEIGHT="20" WIDTH="80" SIZERATION="0,0" :按钮的位置定义 CAPTION:按钮标题
DATASET 编辑数据集或者浏览数据集的代码,用来计算下面的idexp和enableexp
IDEXP : 用于执行命令的ID表达式
IDERI:id对应的ERI
ENABLEEXP: 按钮可用状态的表达式。
VERBS="Edtmodify" :按钮可以执行的命令,由编辑对象执行。
按钮中还可以实现全局命令具体格式如下:
<BUTTON…>
<COMMANDS>
<CMD DOMAIN=".GZZBDP.DATA" ACTION="DEFAULT" VERB="DatDelete"/>
DOMAIN 执行删除命令的data属性,必须提供实体代码和属性代码
ACTION 执行删除命令的活动
VERB 固定值
全局命令可以用来打开其他实体,可以用来删除,审核、记账等操作
</COMMANDS>
(Web不支持)
<CMDLOCAL VERB=''/> 执行本地命令, 动词为菜单上的命令动词
<CMDLINK WIDTH='' HEIGHT='' TITLE='' URL='http://{}'/>
弹出窗口打开网页链接, WIDTH ,HEIGHT 弹出窗口的尺寸,TITLE 弹出窗口的标题
URL 网址,如果有表达式需要放在{}中.
</BUTTON>
举例如下:
<LAYOUT>
<FRLAYOUT TYPE="PAGE">
<LAYOUT TYPE="VERTICAL" HEIGHT="%100" WIDTH="%100">
<LAYOUT TYPE="HORIZON" HEIGHT="180" WIDTH="%100">
<LAYOUT TYPE="BUTTONPANEL" CAPTION="" HEIGHT="180" WIDTH="100" TABCAPTION="工具条">
<BUTTON ENABLESTATUS="ALL" VERBS="EdtNew" X="5" Y="10" HEIGHT="20" WIDTH="80" CAPTION="新建" SIZERATION="0,0" DATASET="" IDEXP="" ENABLEEXP=""/>
<BUTTON ENABLESTATUS="NEW~MODIFY" VERBS="EdtSave" X="5" Y="30" HEIGHT="20" WIDTH="80" CAPTION="保存" SIZERATION="0,0" DATASET="" IDEXP="" ENABLEEXP=""/>
<BUTTON ENABLESTATUS="VIEW" VERBS="Edtmodify" X="5" Y="50" HEIGHT="20" WIDTH="80" CAPTION="修改" SIZERATION="0,0" DATASET="" IDEXP="" ENABLEEXP=""/>
<BUTTON ENABLESTATUS="VIEW" X="5" Y="70" HEIGHT="20" WIDTH="80" CAPTION="删除" SIZERATION="0,0" DATASET="EDITDS" IDEXP="rkdid" ENABLEEXP="">
<COMMANDS>
<CMD DOMAIN=".CGRKD.DATA" ACTION="DEFAULT" VERB="DatDelete"/>
</COMMANDS>
</BUTTON>
<BUTTON ENABLESTATUS="VIEW" X="5" Y="90" HEIGHT="20" WIDTH="80" CAPTION="审核" SIZERATION="0,0" DATASET="EDITDS" IDEXP="rkdid" ENABLEEXP="">
<COMMANDS>
<CMD DOMAIN=".CGRKD.DATA" ACTION="DEFAULT" VERB="DatAudit"/>
</COMMANDS>
</BUTTON>
<BUTTON ENABLESTATUS="VIEW" X="5" Y="110" HEIGHT="20" WIDTH="80" CAPTION="撤审" SIZERATION="0,0" DATASET="EDITDS" IDEXP="rkdid" ENABLEEXP="">
<COMMANDS>
<CMD DOMAIN=".CGRKD.DATA" ACTION="DEFAULT" VERB="DatUnAudit"/>
</COMMANDS>
</BUTTON>
<BUTTON ENABLESTATUS="VIEW" X="5" Y="130" HEIGHT="20" WIDTH="80" CAPTION="记帐" SIZERATION="0,0" DATASET="EDITDS" IDEXP="rkdid" ENABLEEXP="">
<COMMANDS>
<CMD DOMAIN=".CGRKD.TRANPP" ACTION="DEFAULT" VERB="TrnProcess"/>
</COMMANDS>
</BUTTON>
<BUTTON ENABLESTATUS="VIEW" X="5" Y="150" HEIGHT="20" WIDTH="80" CAPTION="撤帐" SIZERATION="0,0" DATASET="EDITDS" IDEXP="rkdid" ENABLEEXP="">
<COMMANDS>
<CMD DOMAIN=".CGRKD.TRANPP" ACTION="DEFAULT" VERB="TrnUnprocess"/>
</COMMANDS>
</BUTTON>
</LAYOUT>
<LAYOUT TYPE="PANEL" DSINDEX="1" DSTYPE="EDIT" WIDTH="100" HEIGHT="100"/>
</LAYOUT>
<LAYOUT TYPE="VERTICAL" HEIGHT="%100" WIDTH="%100">
<LAYOUT TYPE="GRID" WIDTH="%100" HEIGHT="%60" DSTYPE="EDIT" DSINDEX="2" TABCAPTION="订单明细"/>
<LAYOUT TYPE="GRID" WIDTH="%100" HEIGHT="%60" DSTYPE="EDIT" DSINDEX="3" TABCAPTION="物流信息"/>
</LAYOUT>
</LAYOUT>
</FRLAYOUT>
</LAYOUT>
命令动词 |
命令含义 |
|
|
|
|
|
|
|
|
|
|
|
|
|
子编辑,是在一个编辑界面中可以嵌入另外一个实体的编辑功能,子编辑可以在一对多的单据情况下使用(不适应多对多或者多对一的场合),如一个订单可以包含多个出库单,多个收款记录,这样可以反映出业务的全貌。
无关系的子编辑定义,只是作为布局的一部分,与编辑没有关系。
<LAYOUT TYPE="EDITOR" ERI=".SPYJ.EDIT" ACTION="DEFAULT"
WIDTH="" HEIGHT="" CAPTION="审批" TABCAPTION="审批流程"/>
RELATIONDS 如果定义了该属性表示有关系的子编辑,有关系的子编辑定义,作为子编辑,主记录的id作为子实体的一个字段,
<LAYOUT TYPE="EDITOR" ERI=".SPYJ.EDIT" ACTION="DEFAULT"
WIDTH="" HEIGHT="" CAPTION="审批" TABCAPTION="审批流程"
ENABLEEXP="estatus>1" IDMAP="cgddid=tranid" RELATIONDS="BROWSEDS"
TYPECOL="typeid" TYPEID="blentityid()" OPENFIRST="TRUE"
/>
OPENFIRST=’TRUE’ 打开relationds 中的第一个记录。 必须指定relationds,
TYPE="EDITOR" 子编辑布局
ERI=".GJDM.EDIT" ACTION="DEFAULT" 子编辑对应的ERI和活动
ENABLEEXP : 可以编辑子实体的状态条件,(一般主编辑处于新建或者没有记录打开的情况下无法编辑子实体,因为此时主实体的ID还没有确定)。 一般ID号 <= 0 的状态是没有记录打开的状态。
IDMAP="crossmainid=crossmainid" : 主编辑的和子编辑的关联条件, 在子编辑新建记录的时候会根据这个条件自动从主编辑中去对应关联字段的值,在打开主记录的时候也会根据此条件查询关联数据集中的子记录。
RELATIONDS="BROWSEDS" :关联数据集,子编辑中用来查询关联主编辑记录的数据集,必须包含一个参数名称为子编辑的对应关联字段,用以查询对应主编辑记录的子记录。 例如可以用编辑中的BROWSEDS1 ,当父编辑打开一个记录时同这个记录关联的所有子记录自动查询出来。
WIDTH="%30" HEIGHT="%50" CAPTION="供应商" TABCAPTION="国家代码" 同其他布局类型
TYPEID=’由父编辑计算的表达式’ TYPECOL=’子编辑中用识别类型的字段’ (可选,必须同时指定或不指定)
同一个子编辑可以被多个父编辑重复利用,为了区别,在子编辑主表中增加一个字段 例如 entitytype 用来记录主实体的类型,即TYPECOL =’entitytype’ , 其取值由主实体的主编辑数据集计算得来,例如 TYPEID=’entityid()’
这样子实体新曾记录会自动通过设定entitytype的值。 要求关系数据集必须有一个参数 名称同 TYPECOL中的设定。
- 编辑中使用网页的布局
编辑中可以跟随打开的记录和编辑的字段来显示一个动态网页,例如:
效果如下:
<LAYOUT TYPE="WEBPAGE" WIDTH="%50" HEIGHT="%100" DATASET="EDITDS" FIELDS="" URL="http://news.sina.com.cn" TABCAPTION="页面展示"/>
TYPE:必须是WEBPAGE
DATASET:用来计算生成网页 URL地址数据集,可以是编辑数据集或者浏览数据集
FIELDS:关注的字段,如果这些字段内容变化时,系统会视图计算地址,如果地址发生变化就导航到新的网页地址。
URL:地址链接,其中可以通过 大括号{ } 嵌入表达式 例如URL=http://server/apage.html ? abc= { str(cpid) } …” 也就是说表达式必须放在大括号中,有DATASET指定的数据集来计算。 当数据集,新建,打开,字段值变化,当前记录变化的时候都会试图重新计算URL,如果地址发生变化就导航到新的地址。
其他属性同一般布局。
Created with the Personal Edition of HelpNDoc: Easy EBook and documentation generator