Cognos Framework Managerのデータモデルを複数人で開発する

##概要
Cognos Framework Managerを複数人で開発したい時に、それぞれの開発担当者が開発したモデルを、どうやってマージしたら良いか、というのを聞かれる事があります。

こうやろうという正式なガイドがある訳ではないので、私のプロジェクトではこうやってましたという一例の紹介です。

##方法
とりあえずDatabaseViewにテーブル定義を取り込んだ状態のモデルです。
BusinessViewは何も作成していません。
ここから、開発担当①には「製品」のクエリーサブジェクトを、開発担当②には「従業員」のクエリーサブジェクトをそれぞれ開発してもらう、というシナリオだとします。
![001.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/d1319f01-8253-2474-f46d-d936d9b2ee48.png)

FMモデルのフォルダには、以下のファイル群がありますので、担当①と担当②にそれぞれこのファイル群を渡します。
![002.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/80ebc636-1c4a-f3f5-7cce-a565bcebb946.png)

担当①はFMModel1というフォルダにファイル群を置きました。
![003.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/fd11962b-1630-536f-08c8-d1318c35d730.png)

ここで、モデル開発に入る前に「log.xml」ファイルを削除します。
![004.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/46b785ba-e098-31a0-1d99-6d5f1d515200.png)

「log.xml」を削除した状態です。
![005.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/23111dd2-e2d5-8d5d-3bbb-4cf7c0a00b48.png)

この状態で、FMModel1のFMModel.cpfを指定してモデルを開きます。
![006.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/33d677ff-ac98-94a6-38b9-3541c493dae2.png)

頑張ってBusinessViewに「製品」クエリーサブジェクトを作成しました。
![007.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/9d8b9ac4-e173-3c98-b50a-047003a55a9e.png)

一方その頃、担当者②はFMModel2にファイル群を展開していました。
![008.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/d1d7f3ea-276f-820f-4b12-c823d229364c.png)

そしてFMModel2をFMで開いて、
![009.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/2d06e1db-7ce8-162a-3456-e5712fc0a0dd.png)

「従業員」クエリーサブジェクトを作成してました。
![010.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/85128997-2484-87f9-75ab-60f1d5fe27f5.png)

さて、どうやって「製品」と「従業員」のクエリーサブジェクトを元のFMモデルに取り込むかというと、担当者①と②から、それぞれのFMモデルフォルダー(FMModel1とFMModel2)にある、「log.xml」ファイルを送ってもらいます。
どこか適当なフォルダにlog.xmlファイルを置いて、わかりやすいように名称を変更します。
![011.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/5cc7b2b2-81e9-f40e-3a9b-9604de08468a.png)

さて、元のFMモデルを開きます。
BusinessViewは何も存在しない状態ですね。
![012.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/ede2e688-1bac-7ef0-29ca-50a214333076.png)

ここで「プロジェクト」メニューから「スクリプトの実行」を選択します。
![013.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/c7d4ce21-4caa-4169-5369-7d565e5a002c.png)

担当者①から送られてきた「log1.xml」を指定します。
![014.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/389d3055-5358-2185-9c7f-1672f34e8d07.png)

担当者①が行った変更で取り込みたいものをチェックし「実行」。
![015.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/838c557b-d383-868c-7fc9-d87b13fddfc7.png)

正常完了を確認し「承諾」。
![016.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/848771ac-2f88-0421-7264-0d294e61c0dc.png)

「製品」クエリーサブジェクトが取り込まれました。
![017.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/88eb5034-a65a-dbd2-4abc-e82ec637d72a.png)

この状態で、再度「プロジェクト」メニューから「スクリプトの実行」を選択し「log2.xml」を指定します。
![018.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/d198afc8-a53b-dffc-4f05-a1cf8df95001.png)

担当者②の変更を反映します。
![019.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/37416675-bd75-ab7f-4afd-1677e8ee743e.png)

このように「従業員」クエリーサブジェクトも取り込まれました。
![020.PNG](https://qiita-image-store.s3.amazonaws.com/0/147246/78ecec45-0a8d-35a3-fc50-4e0ff5116b90.png)

まあこんな要領で、それぞれの担当者が開発したログを1日の終わりに、マスターモデルに取り込むようにしていました。

もっと良いやり方あるという方は、是非教えて下さい！