模板迁移-组装业务包部分(自测迁移ok)

我是社区第78956位番薯,欢迎点我头像关注我哦~
模板迁移,查了文档、也搜了论坛,好几次,翻了好几回,发现都需要满足下面的条件,然而第2条感觉好像是需要重做表的ETL操作从而保持“表名和字段相同”,本人狠懒,查了文档感觉应该可以组装一下,试了下发现居然可以
        准备
        不同系统之间模板迁移需要有两个条件:
        1、两个系统内数据配置>业务包下的表名和字段名相同;
        2、两个系统的版本相同。
        注:若不同系统数据源分别为Excel数据集和数据库表/sql数据集,尽管表名和字段名均相同,仍不能进行模板迁移。因其在系统中保存的数据结构不一致。
        来自 <http://help.finebi.com/doc-view-505.html>

        由于特殊原因,不能出现具体的包名、表名、字段等具体的各种名的名称、数据,当然也不方便截图了,但是下面的步骤是非常详细的,这个方法,测试目前没有发现什么问题,搞过去可以直接看到效果,不需要调整什么
        测试环境:FineBI 4.1
下面的内容主要涉及 2个目录 8个文件,也可以说是5个文件:
        1、\WebReport\WEB-INF\resources 目录下:
                        datasource.xml
                        biconnection.xml
        2、\WebReport\WEB-INF\resources\fineConf目录下:
                        FineBusinessPackageAnalysis.xml
                        FineBusinessPackageConfig.xml
                        FineBusinessTableAnalysis.xml
                        FineBusinessTableConfig.xml
                        FineCubeTableAnalysis.xml
                        FineCubeTableConfig.xml
                这些文件具体是干嘛的,这里就不在赘述了,请自行查阅 官方文档 .
                        FineBI工程目录结构:http://help.finebi.com/doc-view-374
                有一点,从这6个文件的命名规则可以发现两两一组且分别为Package、Table、CubeTable命名,而且里面的内容两两也都是一样的
1、首先在测试系统里面,将系统再带的演示模板部分全部删除掉
                1、删除目录管理里面的所有目录
                2、删除仪表板中所有模板、文件夹
                3、删除业务包管理里面的所有业务包
                4、删除不必要的数据连接(也可以不用删)
                5、更新FineIndex
2、检查上面8个文件里面的残留的配置行,无用的可以全部删掉
                datasource.xml:文件下多余的  <Connection name="FNNN".......></Connection>  标签
                biconnection.xml:里面是一条一条增加的,一眼就可以发现,可以不管
        fineConf文件夹下
                FineBusinessPackageAnalysis.xml  与  FineBusinessPackageConfig.xml 文件里面,只就下这些就可以了   
  1. <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  2.                                 <Pool V="Default">
  3.                                 <fineBusinessPackagePool>
  4.                                 
  5.                                 </fineBusinessPackagePool>
  6.                                 </Pool>
复制代码

                FineBusinessTableAnalysis.xml  与   FineBusinessTableConfig.xml 文件里面 ,只留下这些
  1. <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  2.                                 <Pool V="Default">
  3.                                 <fineBusinessTablePool>
  4.                                 
  5.                                 </fineBusinessTablePool>
  6.                                 </Pool>
复制代码

                                
                FineCubeTableAnalysis.xml  与  FineCubeTableConfig.xml  文件里面,只留下           
  1. <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  2.                                 <Pool V="Default">
  3.                                 <fineTablePool>
  4.                                 
  5.                                 </fineTablePool>
  6.                                 </Pool>
复制代码

                其实写到这里,应该有的番薯就懂了
                步骤1、2 的操作,完全是为了保持一个空环境,以便于发现属于自己操作后而增量的配置行,当然如果自己能分清哪些是新增模板的配置,这两步可以不做。因为有些表、ETL配置确实很好分辨,仔细看看基本都可以摘出来的。
3、配置数据连接
        配置完后,在发现:
                datasource.xml 文件里面增加了一些配置,这些就是刚才的新增数据连接的配置
  1. <Connection name="FinBI_NNN" class="com.fr.data.impl.JDBCDatabaseConnection">
  2.                         <DatabaseAttr/>
  3.                         <JDBCDatabaseAttr url="jdbc:sqlite://${ENV_HOME}/../XXXXX.db" driver="org.sqlite.JDBC" user="" password="___" encryptPassword="true">
  4.                         <DBCPAttr testOnBorrow="false" timeBetweenEvictionRunsMillis="500000" minEvictableIdleTimeMillis="300000"/>
  5.                         </JDBCDatabaseAttr>
  6.                         </Connection>
复制代码

                        FNNN 为刚才新建的 数据库连接名称,这个很容易找
                biconnection.xml 文件里面增加了一行
                        <conn name="FinBI_NNN" createBy="-999" initTime="1538147734664" database="其他"/>
3、新建业务包,添加表,ETL 各种操作搞起来
        做完发现FineBusinessPackageAnalysis.xml  与  FineBusinessPackageConfig.xml  里面同时增加了
                       
  1. <fineBusinessPackage>
  2.                         <packageID>65b9c71f24f53bc3</packageID>
  3.                         <packageName>FinBI_NNN</packageName>
  4.                         <owner>-999</owner>
  5.                         <position>1538148661335</position>
  6.                         <businessTables>
  7.                         <businessTableName>XXXXXX表1</businessTableName>
  8.                         <businessTableName>XXXXXX表2</businessTableName>
  9.                         <businessTableName>XXXXXX表N</businessTableName>
  10.                         </businessTables>
  11.                         </fineBusinessPackage>
复制代码

               
        FineBusinessTableAnalysis.xml  与   FineBusinessTableConfig.xml 里面同时增加了
                <fineBusinessTable>................</fineBusinessTable> 标签
                这里就存储了具体的表名、字段 ,ETL增加的列名等,基本上都可以认出来,所以就不多说了
               
        FineCubeTableAnalysis.xml  与  FineCubeTableConfig.xml 里面同时增加了
                <fineCubeTable type="ETL">.........................</fineCubeTable> 标签
        里面包含了,对标做的一些ETL操作,增加列、计算、公式啥的,可以看出来
                这里要说明的是,我这边第3步和第2步是倒过来的,就是我先做好了模板,然后又删除了不需要的部分,因为我操作完第一步后,没有跟新FineIndex,所以有很多残留

4、模板迁移(关闭BI)
        1、模板拷贝
                拷贝模板等操作事项,就不说了,官方文档里面有
                        模板迁移:http://help.finebi.com/doc-view-505.html 具体去看一看
        2、将刚才 8个配置文件里面的增加的内容,分别拷贝到需要迁移的工程里面对应的文件中,要注意标签的开始与,不要弄劈叉了
        3、重新启动BI ,并更新FineIndex ,就可以查看迁移的模板了。就可以了,就可以了

番薯同胞们,如果觉得这些对你有帮助的话,可以下载一下doc文档版(66豆)赞助点豆子,嘿嘿嘿
如果有什么问题的话欢迎指正,当然如果有其它的办法也请告知一声,谢谢



发表于 2018-10-2 21:54:56
补充一下 FineCubeTableAnalysis.xml  与  FineCubeTableConfig.xml 里面有些标签是 <fineCubeTable type="DB">....</fineCubeTable> 需要注意不要漏掉了
发表于 2018-10-10 10:47:24
发表于 2018-10-10 20:38:45
来自手机
你猜
发表于 2018-10-10 20:44:37
来自手机
都忙的过节了
发表于 2018-10-10 20:53:02
来自手机
加吧
发表于 2019-3-29 22:06:49
学习了!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

10回帖数 1关注人数 8066浏览人数
最后回复于:2019-3-29 22:06

返回顶部 返回列表