SugarCRM

第8回 カスタマイズをパッケージングする


河村 嘉之
オープンソースCRM株式会社
2009/5/12


パッケージ設定項目の詳細

 ここからそれぞれの項目について詳しく見ていきます。

 beans項目は、以下のように新しく作成するBeanに関する情報を指定します。この項目には、新しく追加するBean1つ1つをそれぞれ要素とした配列を指定します。個々のBeanは、module要素にそのBeanの名前、class要素にそのBeanのクラス名、pathに実装ファイルのファイル名、tab要素にそのBeanをインストールしたときにタブに表示するかどうかを指定した配列として定義します。

'beans' => array (
  0 => array (
    'module' => 'osc_Servers',
    'class' => 'osc_Servers',
    'path' => 'modules/osc_Servers/osc_Servers.php',
    'tab' => true,
  ),
  ……
),

 copy要素には、以下のように、このパッケージをインストールした際にどのファイルをどこにコピーするかといった情報を定義します。ここには、各コピー処理を1つの要素とした配列を指定します。個々の要素は、from要素にコピー元のディレクトリ/ファイル、to要素にコピー先のディレクトリ/ファイルを指定した配列になります。

'copy' => array (
  0 => array (
    'from' => '<basepath>/SugarModules/modules/osc_Servers',
    'to' => 'modules/osc_Servers',
  ),
  ……
),

 language要素には、以下のようにインストールするパッケージに関連する言語ファイルを指定します。ここには、各言語ファイルを1つの要素とした配列を指定します。個々の要素は、from要素にコピー元のファイル、to_module要素にコピー先のモジュール、language要素に言語パック名(en_us、jaなど)を指定した配列になります。

'language' => array (
  0 => array (
    'from' => '<basepath>/SugarModules/language/relationships/ja.osc_Serversaccounts.php',
    'to_module' => 'osc_Servers',
    'language' => 'ja',
  ),
  ……
),

 layoutdefs要素には、以下のようにインストールするパッケージに関連するレイアウト定義ファイルを指定します。ここには、各定義ファイルを1つの要素とした配列を指定します。個々の要素は、from要素にコピー元のファイル、to_module要素にコピー先のモジュールを指定した配列になります。

'layoutdefs' => array (
  0 => array (
    'from' => '<basepath>/SugarModules/layoutdefs/osc_Servers.php',
    'to_module' => 'osc_Servers',
  ),
  ……
),

 vardefs要素menu要素も、layoutdefsと同様に指定します。

 relationships要素には、以下のようにインストールするパッケージのモジュール間の関連の定義を指定します。ここには、各関連を1つの要素とした配列を指定します。個々の要素は、module要素に関連先のモジュール、module_vardefs要素に関連先のモジュールに追加されるvardefsの定義情報を記述したファイル、meta_data要素に関連のメタデータを指定した配列になります。

'relationships' => array (
  0 => array (
    'module' => 'Accounts',
    'module_vardefs' => '<basepath>/SugarModules/vardefs/Accounts.php',
    'meta_data' => '<basepath>/SugarModules/relationships/osc_Servers_accountsMetaData.php',
  ),
  ……
),

 manifest.phpファイルを作成したら、そこに定義した情報を基にファイルを配置し、それらのファイルをZip形式でアーカイブします。これでパッケージが完成しました。

モジュールローダーを用いてインストール

 では次に、完成したパッケージをSugarCRMにインストールしましょう。モジュールなどのカスタマイズをパッケージしたものは、モジュールローダーを利用してインストールします。その手順は以下のようになります。

1. 管理権限を持つユーザーでログインします。

2. 管理メニューからモジュールローダーを選択します。

画面1
画面1 管理画面からモジュールローダーを選択する

3. 下側の領域のモジュールフィールドでパッケージのファイルを選択し、アップロードボタンを押します。

4. パッケージをアップロードすると、下側の領域のテーブルにそのパッケージが表示されます。そこのインストールボタンを押し、インストール画面で確定ボタンを押します。するとパッケージのインストールが始まります。

5. インストールが成功し、モジュールローダーに戻ると、モジュールローダーの上側の領域のテーブルにインストールしたパッケージが表示されます。

画面2
画面2 モジュールローダー

 これで、そのパッケージに含まれるモジュールなどが利用可能になります。

 このようにモジュールローダーを利用することにより、どのようなパッケージのどのバージョンがインストールされているかが把握可能になります。そのため、現在利用中のSugarCRMでどのようなパッケージを利用しているかをきちんと管理できます。

コラム■パッケージの共有が可能なSugar Forge

 本文で説明したとおり、モジュールローダーを利用すれば、カスタマイズしたパッケージをインストールできます。パッケージをインストールすることにより、SugarCRMに自分が必要とする機能を追加していくことができます。

 より使いやすいSugarCRMを構成していくために、自分が作成したパッケージ以外にも、優れたパッケージがあればそれを取り込んでいけたら便利でしょう。そこでSugarCRMでは、Sugar Forgeというサイトを通して、ユーザーが作成したパッケージを共有しています。

関連リンク:
http://www.sugarforge.org/
Sugar Forge

 このサイトでは、SugarCRMに追加できるパッケージがキーワードごとに分類されて公開されています。このサイトを利用して必要なパッケージを見つけ出し、ダウンロードしてインストールすることにより、より自分に合ったSugarCRMを構成することができます。

画面3
画面3 SugarForgeのサイト

まとめ

 今回は、SugarCRMにインストールできるパッケージの作成方法と、そのインストール方法を説明しました。この仕組みを利用することによって、どのようなパッケージのどのバージョンがSugarCRMにインストールされているかを管理でき、どのようなカスタマイズがそのSugarCRMに加えられているかをきちんと把握することができます。

 次回は、SugarCRMのホーム画面をカスタマイズする方法を説明します。SugarCRMのホーム画面には、システムに蓄積されている情報を小さな窓で表示することができます。これをうまく活用することにより、自分に関連する案件や取引先の情報を1つの画面で俯瞰することが可能です。このホーム画面に表示される小窓(「ダッシュレット」と呼ばれています)の作成方法を紹介し、より便利なホーム画面を作成していきます。

2/2
 

Index
徹底解剖、SugarCRM(8)
 カスタマイズをパッケージングする
  Page 1
 カスタマイズをパッケージングする
  Page 2
 パッケージ設定項目の詳細
 モジュールローダーを用いてインストール
 コラム■パッケージの共有が可能なSugar Forge
 まとめ

Linux Square全記事インデックス


 Linux Squareフォーラム 仮想化技術関連記事
連載:実践! Xenで実現するサーバ統合
有力な仮想化技術として注目を集めるようになった「Xen」。このXenを活用してサーバ統合を実践していく手順を具体的に紹介します
特集:サーバの仮想化技術とビジネス展開の可能性
jailからUML/VMwareまで
1台のマシンで複数のサーバを動かす「仮想化技術」。VMwareやUMLの登場により、WebサイトだけでなくOS自体を仮想化できるようになった
特集:仮想化技術のアプローチと実装
VMwareから要注目技術Xenまで

1台のサーバで複数の仮想マシンを実行する仮想化技術は、空間コストを引き下げる可能性を持つ。最新の仮想化技術を概観してみよう
特集:仮想OS「User Mode Linux」活用法
技術解説からカーネルカスタマイズまで
Linux上で仮想的なLinuxを動かすUMLの仕組みからインストール/管理方法やIPv6などに対応させるカーネル構築までを徹底解説
特集:仮想化技術の大本命「Xen」を使ってみよう
インストール & Debian環境構築編

高いパフォーマンスで本命の1つとなった仮想マシンモニタ「Xen」。日本語による情報が少ないXenを、実際に動かしてみよう
特集:仮想化技術の大本命「Xen」を使ってみよう
Xen対応カスタムカーネル構築編

Xen環境およびその上で動作する仮想マシン用カーネルを自分で構築しよう。これにより、自由にカスタマイズしたカーネルを利用できる
特集:IPv6、UML、セキュリティ機能の統合
全貌を現したLinuxカーネル2.6[第4章]

今回は、これまでに紹介し切れなかった機能を一気に紹介する。これを読めば、カーネル2.6の正式リリースが楽しみになるだろう
Linux Squareプロダクトレビュー VMware Workstation 4
PC/AT互換機エミュレータとして不動の地位を築いたVMware。その新バージョンがリリースされた。新機能を早速試してみよう
古くて新しい「サーバ仮想化技術」の行方
サーバ仮想化を実現するための技術がソフトウェア、ハードウェアの両面で出そろってきた。ハイパーバイザーのさらなる高速化に向けた動きを紹介する
Linux Squareフォーラム全記事インデックス


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

Linux & OSS 記事ランキング

本日 月間
ソリューションFLASH