【问题标题】:Sparx EA template fragment scripting not outputs any dataSparx EA 模板片段脚本不输出任何数据
【发布时间】:2016-12-23 08:37:33
【问题描述】:

遵循这条指令here

创建了我自己的document template fragment,里面有自定义字段。 绑定自定义脚本(代码如下)

创建了包含我的document template fragmentdocument模板(在custom标签内的模板片段中,我添加了自定义字段,如AuthorTimeGen

使用了文档生成,但我得到的是一个空文档! 为什么会这样?

我有 Sparx Ea 12 版本

脚本代码(复制自示例here

function MyRtfData(objectID) {
    var i;
    var xmlDOM = new ActiveXObject("Microsoft.XMLDOM");
    xmlDOM.validateOnParse = false;
    xmlDOM.async = false;
    var node = xmlDOM.createProcessingInstruction("xml", "version='1.0' encoding='ISO-8859-1'");
    xmlDOM.appendChild(node);
    var xmlRoot = xmlDOM.createElement("EADATA");
    xmlDOM.appendChild(xmlRoot);
    var xmlDataSet = xmlDOM.createElement("Dataset_0");
    xmlRoot.appendChild(xmlDataSet);
    var xmlData = xmlDOM.createElement("Data");
    xmlDataSet.appendChild(xmlData);
    var xmlRow = xmlDOM.createElement("Row");
    xmlData.appendChild(xmlRow);
    var xmlName = xmlDOM.createElement("DateGen");
    var today = new Date();
    var dd = today.getDate();
    var mm = today.getMonth() + 1; //January is 0!
    var yyyy = today.getFullYear();
    if (dd < 10) {
        dd = '0' + dd
    }
    if (mm < 10) {
        mm = '0' + mm
    }
    today = mm + '/' + dd + '/' + yyyy;
    xmlName.text = today;
    xmlRow.appendChild(xmlName);
    var xmlName = xmlDOM.createElement("TimeGen");
    var currentTime = new Date()
    var hours = currentTime.getHours()
    var minutes = currentTime.getMinutes()
    if (minutes < 10) {
        minutes = "0" + minutes
    }
    xmlName.text = hours + ":" + minutes + " ";
    xmlRow.appendChild(xmlName);
    var xmlName = xmlDOM.createElement("Author");
    xmlName.text = Session.UserName;
    xmlRow.appendChild(xmlName);
    var xmlName = xmlDOM.createElement("EA_REPOS");
    xmlName.text = Repository.ConnectionString;
    xmlRow.appendChild(xmlName);
    return xmlDOM.xml;
};

当我在调试模式下运行它似乎没问题,它会输出一些 xml 结构,但是当我生成文档时 - 我得到的只是 emtpy 表

UPD:

现在出现 rtf 错误,系统输出为空

错误看起来像这样:

UPD2:

当我调试它时,它会输出有效的 XML

【问题讨论】:

  • 如果系统告诉您系统输出中有错误并且为空,您应该向 Sparx 报告错误。
  • @ThomasKilian 哦,好吧,我突然解决了这个问题!奇怪的方式,但是,我会发布一个答案

标签: xml jscript enterprise-architect


【解决方案1】:

问题解决了!我的意思是我可以使用template framents + scripts 机制生成带有自定义字段的文档。

我做了什么(长话短说——一切从头开始):

  1. 新建脚本组
  2. 在那里创建了新的JScript 文件(那个 上面的代码包含在Javascript 文件中,也许是 原因)
  3. 创建新的fragment template,自定义Autor 字段 那里
  4. 创建template,添加我的fragment template

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-26
    • 1970-01-01
    • 1970-01-01
    • 2021-08-23
    • 1970-01-01
    • 1970-01-01
    • 2014-12-16
    • 1970-01-01
    相关资源
    最近更新 更多