表单级别的Orbeon自定义元数据

时间:2016-09-04 14:51:36

标签: xpath orbeon xforms formbuilder xbl

我想通过{{在表单级别(元数据)配置成功消息successMessageTextBox)和 downloadLink linkTextbox) 1}},以便管理员可以随时更改和发布它。 formBuilder文件也可以访问这些值以配置properties-local.xml

e.g:

success-message

任何建议都将受到赞赏!!

更新 : -

1>元数据

navigate(uri="{xxf:instance('fr-parameters-instance')//linkTextbox}")

success-message(message = "{xxf:instance('fr-parameters-instance')//successMessageTextBox}")

2 - ; Formfeild

  if (exists(xxf:instance('fr-form-metadata')/linkTextbox)‌​) 
            then navigate(uri="{xxf:instance('fr-form-metadata')/linkTextbox}")
            else nop

存在代码快照

if (exists(xxf:instance('fr-form-instance')//linkTextbox)‌​) 
        then success-message(message = "{xxf:instance('fr-form-instance')//linkTextbox}") 
        else then success-message("save-success") 

代码快照是空白

 <property as="xs:string"  name="oxf.fr.detail.process.save-final.*.*">
            require-uploads
            then validate-all
            then save
            if (exists(xxf:instance('fr-form-instance')//linkTextbox)‌​) 
            then navigate(uri="{xxf:instance('fr-form-instance')//linkTextbox}")
            else nop
            recover error-message("database-error") 
  </property>

错误日志: -

    <property as="xs:string"  name="oxf.fr.detail.process.save-final.*.*">
                    require-uploads
                    then validate-all
                    then save
                   then
                   (
                     if ("not(xxf:is-blank(xxf:instance('fr-form-instance')//msg))") 
                     then success-message(message = "{xxf:instance('fr-form-instance')//msg}")
                     else nop
                    )
                    recover error-message("database-error") 
          </property>

1 个答案:

答案 0 :(得分:1)

我希望将此添加到fr-form-metadata实例,例如通过在表单生成器中编辑表单的来源,然后在<success-message>内添加<metadata>

<xf:instance xxf:readonly="true" id="fr-form-metadata" xxf:exclude-result-prefixes="#all">
    <metadata>
        ...
        <success-message>Submitted, all good!</success-message>
    </metadata>
</xf:instance>

然后,在您的过程中,您可以使用以下内容显示该消息:

success-message(message = "{xxf:instance('fr-form-metadata')/success-message}")