我有3个提示。第一个提示包含值A & B.在选择A时,剩下的2个提示应该隐藏,选择B后应显示2个提示。所有3个提示都是强制性的。任何人都可以帮助我实现这种情况?防止自动提交在Cognos中生成报告
0
A
回答
2
我假设您已经知道如何有条件地隐藏和取消隐藏元素,并且您只是想知道如何刷新页面而不提交它。
有三种解决方案,您的问题:
- 添加一个重新提示按钮
- 使用JavaScript来检测时,单选按钮状态发生了改变,并重新提示页面
- 使用使用隐藏的解决方法值提示
方法1 - 重新提示按钮
这是通过简单地向报告添加提示按钮并将'Type'属性设置为'Reprompt'来完成的。我不建议您使用此方法,因为每次更改提示值都会导致用户体验不佳,因此要求用户单击重新提示按钮。
方法2 - 的JavaScript API
此方法使用Cognos的支持JavaScript的API来重新提示页每当值提示改变值。请注意,该API仅在版本10.2及更高版本中可用。
- 命名您的值提示。这在提示'名称'属性中指定。为了本教程的目的,我将使用名称'valuePrompt'。
- 向报告中添加一个“HTML项目”。
- 打开HTML项目,并粘贴在下面的代码:
<script>
var report = cognos.Report.getReport('_THIS_');
var valuePrompt = report.prompt.getControlByName('valuePrompt');
var currentValues = (valuePrompt.getValues().length == 0) ? [{'use':''}] : valuePrompt.getValues();
valuePrompt.setValidator(validateValuePrompt);
function validateValuePrompt(values) {
if (values && values.length > 0) {
if (values[0].use != currentValues[0].use) {
currentValues = values;
report.sendRequest(cognos.Report.Action.REPROMPT);
}
} else {
currentValues = [{'use':''}];
}
return true;
}
</script>
的代码优化,使得重新提示作用只发生在提示更改为新的值。当系统检查提示的有效性时,这可以防止多次重新提示,这可能经常发生。
方法3 - 隐藏相关提示
这种技术使用一个隐藏值提示,诱骗COGNOS到使用级联提示功能追平提示虚值,提示时再次提示上的每个值迅速变化的页面。
- 添加提示新值
- 设置新的提示的“必选”属性“否”
- 设置“层叠来源”属性为新的提示是先前存在的值提示的参数
- 隐藏新提示
- 将原始值提示的'Auto-Sumbit'属性设置为'是'。
每当您更改值提示时,页面都会重新提示以刷新隐藏提示。
相关问题
- 1. 防止ID自动生成
- 2. 使用cognos report studio为SQL查询生成Cognos报告
- 3. 慢Cognos报告
- 4. 防止重复报告提交到数据库 - PHP
- 5. 自动生成报告,服务器端
- 6. 使用rMarkdown自动生成报告
- 7. 如何为Android自动生成报告
- 8. 防止提交时显示jquery警报
- 9. SSRS 2008 R2 - 停止自动生成报告的参数
- 10. 防止提交
- 11. 在C中生成报告#
- 12. 在VB.NET中生成报告
- 13. 在Oracle中生成报告?
- 14. 如何防止SSRS报告中的自动调整身体
- 15. JasperReports:动态报告生成
- 16. BIRT生成动态报告
- 17. 在Cognos报告中使用sysdate
- 18. 从动态交叉表查询和vba访问报告“手动”生成报告
- 19. 生成报告
- 20. 报告生成
- 21. wordpress防止错误报告
- 22. Instr函数Cognos报告
- 23. Cognos 10 BI:保存报告
- 24. 如何在HTML中自动生成Android测试报告
- 25. laravel中的动态报告生成
- 26. 从Git生成详细的提交报告
- 27. 防止窗体在页面加载时自动重新提交
- 28. 在php上生成报告?
- 29. 生成PDF报告
- 30. Java报告生成
你到目前为止尝试过什么吗? – Darek