如果脚本被调用两次,模板片段不会生成输出

时间:2014-05-07 11:19:54

标签: enterprise-architect

我正在使用Sparx EA(版本10.0.1007)的增强报告功能,使用Fragment Template和JScript从用户界面设计生成多个表。

我的想法是为特定的EA元素添加TaggedValues,例如

  1. 编辑和RichEdit将具有最小值,最大值,输入类型,默认值
  2. 按钮将有IsDefault,Action
  3. ...... etc
  4. 然后在RTF报告中为每个人创建一个表。输出结果如下:

    No  Name      Mandatory  Input Type    Min  Max  Notes 
    1   Textbox1     Y       alphanumeric   1   255  This is note for Textbox1
    2   Textbox2     N       numeric        0   255  This is note for Textbox2
    
    No  Name      Action            IsDefault   Notes 
    1   Button1   Clear all input      N        This is note for Button1
    2   Button2   Submit the data      Y        This is note for Button2
    

    我已经能够创建片段和JScript来创建表格。由于生成这些表的脚本是相似的,因此我创建了一个脚本,每个脚本都调用该脚本以避免样板代码。

    以下是配置:

    Main template - include Fragment 2 and Fragment 3
    Fragment 2 - calls JScript GenerateTableInput(#PACKAGEID#)
    Fragment 3 - calls JScript GenerateTableButton(#PACKAGEID#)
    JScript GenerateTableInput - calls GenerateTable(packageID, 1)
    JScript GenerateTableButton- calls GenerateTable(packageID, 2)
    

    当我使用上述配置时,生成的文档中只包含Fragment 2或Fragment 3。但是,如果我创建了两个部分脚本(样板代码),则会生成片段2和片段3。

    我是否会错过任何配置,或者这是Sparx EA中的错误?

1 个答案:

答案 0 :(得分:2)

大卫 它似乎对我有用,我有一个带有两个函数的脚本(MyRtfData,MyRtfData2),有两个模板片段来调用这些方法(DocProperties,DocProperties2)并在模板中使用了这两个,并且生成的文档有片段1和片段2呈现。

Doc Fragment Example