从 cognos 10.2.2 迁移到 cognos 11 后 JavaScript 损坏

标签 javascript cognos-bi cognos-11

我已将报告从 Cognos 10.2.2 迁移到 Cognos“11.0.13.1 LTS”版本。管理提示页面的 java 脚本目前在迁移到 11 后被破坏。这在 10.2.2 上运行良好。 Cognos 11 是否发生了某些变化,或者我们正在使用的某些功能已被弃用或类似的情况。任何绳子对于诊断问题都非常有用。 我们还向 IBM 提交了一张票证,以确定发生了什么

我们尝试编辑代码并以不同的方式格式化代码,但仍然得到相同的行为。

var fW = (typeof getFormWarpRequest == "function" ? getFormWarpRequest() : document.forms["formWarpRequest"]);
if ( !fW || fW == undefined) { fW = ( formWarpRequest_THIS_ ? formWarpRequest_THIS_ : formWarpRequest_NS_ );}
var form = fW;

var ID=fW.elements["_oLstChoicesID"];
var SID=fW.elements["_oLstChoicesSID"];

ID.attachEvent("onclick", m_click);


function m_click()
{
   for(i=0;i<fW._oLstChoicesID.length;i++)
    {
       fW._oLstChoicesID[i].selected=false;
       fW._oLstChoicesID[i].disabled=true;
    }
    for(i=0;i<fW._oLstChoicesSID.length;i++)
    {
       fW._oLstChoicesSID[i].disabled=false;
    }

}

我希望在选择 ID 中的任何元素时禁用第二个列表“SID”。

最佳答案

我认为“FormWarpRequest”内容是 Cognos 8 的遗留物。它可能无法在 Cognos 11.0.x 中工作。您应该在 Cognos 10.2.2 ( https://www.ibm.com/support/knowledgecenter/en/SSEP7J_10.2.2/com.ibm.swg.ba.cognos.ug_cr_rptstd.10.2.2.doc/r_prmpt_api_cognos_report.html#cognos.report ) 中使用 cognos.Report.getReport("_THIS_");。这在 Cognos 11.0.x 中应该仍然有效,但您需要开始使用 RequireJS 转向新的编码风格(请参阅 https://www.ibm.com/communities/analytics/cognos-analytics-blog/updated-javascript-samples-for-ibm-cognos-analytics-11-0-10/https://public.dhe.ibm.com/software/data/sw-library/cognos/mobile/scriptable_reports/index.html )并更改 Run with full interactivity 属性选择以利用新功能。

关于从 cognos 10.2.2 迁移到 cognos 11 后 JavaScript 损坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56656595/

相关文章:

PHP 和 ajax 没有更新

javascript - 如何使用 Node 模块从ajax.inc.php页面获取数据?

cognos - 需要帮助在 Cognos Report Studio 中构建数据项

java - 用于运行报告的 Cognos SDK 参数

mysql - FOR 函数导致兼容性问题,寻找 FOR 函数的替代方案

javascript - Safari 8 每次退出时都会清除我的 cookie 吗?

powershell - 通过脚本将默认主题上载到IBM Cognos Analytics

javascript - 自定义登录屏幕中的 jQuery xhtml

javascript - iOS:如何以编程方式触发 web View 中文本字段的输入