单据转换
数据转换服务,可以通过一个单据新建另外一个单据,也可以在后台生成另外一个单据,还可以生成微信模板消息发送
在数据服务属性中定义,
public Object status(ASRequest aRequest, String asOperation, Long aRecId) throws ASException
asOperation :'get'
<ATTRIBUTE>
<TRANSFER ACTION="LY~JY" INVISIBLE='不出现在菜单中的'>
</TRANSFER>
<ATTRIBUTE>
ACTION 多个转换定义,每个通过属性的ACTION 定义ACTION的代码同此属性中的代码。
ACTION : 出现在菜单中的转换服务
INVISIBLE:'不出现在菜单中的转换服务' 有些可以通过脚本直接调用进行转化,所以不需要出现在菜单中
是DATA属性的ACTION
从一个单据中执行命令直接保存为另一单据,或打开编辑界面填充默认值后编辑。
<TRANSFER EDITOR='..编辑路径和活动' PARAMNAME='数据集的查询参数名,多个数据集参数名必须相同'
PARAMVALUE='参数值表达式,环境提供' CONDITION='转换条件表达式,环境和第一个结果数据集都能解析' CAPTION='菜单条目的名称' EDITNEW='FALSE' >
<CONTRACTSINGLE ERI='合约主题域' CODE='合约交易项'/>
<DATASET CODE='数据集代码对应编辑的数据集代码' ERI='数据集路径' ALIAS='' PARAMNAME='可选,若定义忽略全局参数名' >
<FIELD SOURCE="数据集字段名" TARGET="编辑中的字段名"/>
<FIELD SOURCE="cygjs" TARGET="ywgjs" VALUE="-ywgjs"/>
VALUE 如果不指定为TARGET 否则为表达式
</DATASET>
</TRANSFER>
举例:
<TRANSFER CODE="LY" EDITOR=".ZCLY.EDIT:DEFAULT" PARAMNAME="zcywqsid" PARAMVALUE="zcywqsid" CONDITION="ywlx='1'" CAPTION="领用">
<DATASET CODE="EDITDS" ERI="..BROWSEDS" ALIAS="DEFAULT">
<FIELD SOURCE="ecode" TARGET="t_zcywsq_ecode"/>
<FIELD SOURCE="c_gsdn_ecode" TARGET="c_gsdn_ecode"/>
<FIELD SOURCE="s_employee_ecode" TARGET="s_employee_6_ecode"/>
</DATASET>
</TRANSFER>
<FIELD SOURCE="ecode" TARGET="t_zcywsq_ecode"/>
source 和 target 为字段名称,在来源和目标数据集必须存在,具有相同的数据类型
参数值必须在环境中可计算,
转换条件环境和第一个数据集都可以计算。
CAPTION='菜单名称'
CODE: 一个数据属性定义可以存在多个转换 , 通过代码来区别,
EDITNEW 是否打开编辑界面创建记录。否则直接生成保存数据,默认为TRUE,设置为FALSE的时候保存
目前,前台实现了直接打开编辑界面,实现了直接保存。
<CONTRACTSINGLE ERI='合约主题域' CODE='合约交易项'/>
查询将通过合约签署信息发送到交易方完成数据的添加和修改
ERI合约主题域。 CODE 合约项目代码
<TRANSFER CODE="TJ" PARAMNAME="employeeid" PARAMVALUE="employeeid" CONDITION="" CAPTION="提交" EDITNEW="FALSE">
<STATUS ERI=".." ID="employeeid" OP="LOCK~AUDIT" COND="employeeid>0"/> 转换后 锁定和审核
<CONTRACTSINGLE ERI="..CNTEXP" CODE="EDT"/>
<DATASET CODE="EDITDS" ERI="..EDITDS" ALIAS="DEFAULT">
<FIELD SOURCE="ecode" TARGET="ecode"/>
<FIELD SOURCE="ename" TARGET="ename"/>
<FIELD SOURCE="employeeid" TARGET="employeeid"/>
</DATASET>
</TRANSFER>
生成的数据,第一个数据集的记录可以进行数据状态的设定,用于设置合约或者单据转换(自动生成目标数据后的状态设定)
状态操作在EDITNEW=’FALSE’时起作用
STATUS ERI 执行状态服务的数据服务属性,ID 查询后的数据集中的id字段, OP多个状态操作用~分开。
系统先进行状态操作,然后再转换数据(合约两阶段提交的时候采用)
Created with the Personal Edition of HelpNDoc: Single source CHM, PDF, DOC and HTML Help creation