修改动态报表的时候,尝尝需要根据当前设计里指定的数据源,然后打开AOT去查找,相当的不方便。

于是产生写了一个方法,可以根据传过来的数据源名,去AOT找到TABLE或者VIEW, 直接打开,以便修改。

static void sml_openRefTable(ACT_DynamicRpt      dyRpt)
{
TreeNode treeNode; #Define.ViewsPath("\\Data Dictionary\\views\\")
#Define.TablesPath("\\Data Dictionary\\tables\\")
; if( !dyRpt || !dyRpt.RefTableName)
{
throw error(strfmt("%1 cannot open Reference table/view", dyRpt.RefTableName));
} treenode = treenode::findNode(#ViewsPath + "\\" + dyRpt.RefTableName); if( !treenode)
treenode = treenode::findNode(#TablesPath+ "\\" + dyRpt.RefTableName); if( treenode)
treenode.AOTnewWindow(); //相当于在Node上右击打开新窗口展示
}

然后在相应FORM上面加个button,展示。

void clicked()
{
;
super(); ACT_DynamicReportCompiler::sml_openRefTable( ACT_DynamicRpt);
}

发散一下,可以在FORM\sysFormSetup加上相似功能。

实现代码

void fillQueryTreeQueryDatasource(QueryBuildDataSource queryBuildDataSource, int rootId, boolean top = false)
{
//....省略n行代码
//formTreeItem = new FormTreeItem(nodeText,imagelist.image(#ImageDataSource),-1,null);
formTreeItem = new FormTreeItem( nodeText,imagelist.image(#ImageDataSource),-1,
tableid2name(queryBuildDataSource.table()) ); //....省略n行代码
}
void clicked()
{ FormTreeItem formTreeItem;
TableName tablename;
TreeNode treeNode;
#Define.TablePath("\\Data Dictionary\\tables\\")
;
formTreeItem = queryTree.getItem( queryTree.getSelection()); if( formTreeItem.data())
{
tablename = formTreeItem.data(); treeNode = treeNode::findNode( #TablePath + "\\" + tablename); if( treeNode)
treeNode.AOTnewWindow();
} }

  

  

最新文章

  1. 多个Jar包的合并操作
  2. 真机测试INSTALL_FAILED_INSUFFICIENT_STORAGE 的解决方法
  3. 在Visio2010中修改默认字体的大小
  4. JS中的event 对象详解
  5. 《MapReduce: Simplified Data Processing on Large Cluster 》翻译
  6. dedecms v5.7 sp1 给栏目添加缩略图功能
  7. cocos2d-x中Node中重要的属性
  8. Go http.HandlerFunc()
  9. Cubieboard 关闭板载led
  10. hashmap简单实例(个人使用经验)
  11. [二十五]JavaIO之RandomAccessFile
  12. 初次使用beego框架
  13. android页面渲染速度提升的常用方法
  14. 柳青(Jean)英文演讲集合
  15. java十进制转换成二进制数
  16. asp.net core web项目目录解读
  17. VMware Workstation 安装 mac OS 时遇到 不可恢复错误: (vcpu-0)
  18. python学习之高阶函数
  19. CDH安装kafka
  20. 洛谷 P3390 【模板】矩阵快速幂

热门文章

  1. HtmlParser + HttpClient 实现爬虫
  2. RabbitMQ介绍2 - AMQP协议
  3. bug_ _ 应用汇==常见错误列表
  4. 转--一款漂亮实用的Android开源日期控件timessquare
  5. Windows下编译使用Aliyun OSS PHP SDK
  6. Timer与ScheduledThreadPoolExecutor的比较
  7. [C语言](一)第一个Windows 32 API的窗口程序
  8. vb eof详解
  9. SQL Server 2005中的分区表(五):添加一个分区(转)
  10. java的io读取