ラベル SugarCRM の投稿を表示しています。 すべての投稿を表示
ラベル SugarCRM の投稿を表示しています。 すべての投稿を表示

2015年11月25日水曜日

SugarCRMのチーム管理機能はProfessionalから

SugarCRM Community 6.5での確認結果です。

件名で答えが出てしまっていますが、SugarCRMでチーム管理を利用するには
Professionalが必要です。

詳しくはGoogleさんに「SugarCRM チーム管理 Professional」あたりで聞くと
きちんと比較しているサイトが見つかります。

【チーム管理】とは


SugarCRMのマニュアル によると、
「チーム管理オプションは安全な方法でレコードを管理するためにチームとしてユーザをグループ化するために使います。」とあります。
私が求めていた機能には、「取引先毎にチームで参照権限を分けたい」というものがあり、
これを実現できるのが「チーム管理」でした。

実際、チーム管理をきちんとしていけばそれ以上のことも勿論できるのでしょうが
今回必要な最低限の部分がレコードレベルの参照権限でした。


【で?】


結局は、「チーム」という名前のモジュールを追加して、
担当者との関連性を作り、取引先との関連性を作り、
「検索」の条件として使うというレベルで運用を開始することとしました。

レコードレベルの権限をきちっと使えるようになる前に、まずは基本的な機能で
運用をすることの優先度が高かったので、今後拡張するという方針となりました。


【結局は・・・】

件名で答えが出てしまっていますが、きちんと権限を運用するならProfessionalが必要です。
きちんとやらなくても、なんとなくでよいなら、「モジュール」を作ることで似たようなことはできます。


2014年6月20日金曜日

SugarCRMの機能「スタジオ」のまとめ

SugarCRMでは、自分たちの使いたいようにカスタマイズできる仕組みが搭載されています。

その中でも、よく使う「スタジオ」について、機能を纏めておこうと思います。

そもそもスタジオって?


 データに関わる部分、入力に関わる部分、表示に関わる部分 のカスタマイズができるツールです。

 「こういう情報があると良いんだけどな~」 とか

 「項目の重要度で入力順を変えたい」 とか

 「一覧にこの項目も出したい」 とか

 そういった事を解決してくれます。



できること


 ○データに関わる部分
  ・データ項目の追加、変更、削除
  ・項目名の変更
  ・データの関連性の追加、変更、削除

  やろうとすれば、自分たちで新しいデータを作り出すこともできます。

 ○入力、表示に関わる部分
  ・編集画面の並び順、位置の変更
  ・詳細画面のレイアウト
  ・一覧に表示する項目、並び順の変更

  データの入出力画面においては、ほぼすべてを対象として出来そうです。

 ○検索
  ・検索条件、表示内容の追加、変更、削除

 ○モジュール名の変更
  ・リード という名前を変えたり。 とかです。 これはちょっと驚きでした。


ということで、メインで出てくる情報のほぼすべてがカスタマイズ可能です。
うまく使って、活用していきたいと思います。

SugarCRMで、コンボボックス(ドロップダウン)の内容をカスタマイズする

1行備忘録です。

行の追加、削除、変更、並び替えなどができます。


1) 該当の定義名を確認

  【管理】 -> 【スタジオ】を選択後、該当のモジュールを選択して、「フィールド」を選択

2) ドロップダウンの編集

  【管理】 -> 【ドロップダウンの編集】 を選択し、ドロップダウンの一覧から上記の定義名を探す
 クリックすると内容が表示されるので、追加、変更、削除 などができます。

アイテム名は英語、表示ラベルは日本語にするのがよさそうです。

2014年6月19日木曜日

SugarCRMのデバッグ (インバウンドメールが取り込まれない)

SugarCRMはphpで動いています。

一応ソフトウェア開発者なので、困った時にはプログラムを解析、
状況によりデバッグ。なんてこともしています。

今回は、SugarCRMのデバッグ。

インバウンドメールをセットアップしても綺麗にケースに入ってこないので
英語のマニュアルを読むよりは、解析、デバッグしてしまおう。という魂胆です。

【前提】

・インバウンドメールは、cron.phpで呼び出す。
・インバウンドメールの処理プログラムは、以下
 /var/www/myapp/sugarcrm/modules/Schedulers/_AddJobsHere.php

【やったこと】

1. ソースを調べる。


 まず、ソースをのぞいてみました。
 cron.phpを動かしたときにNOTICEが出ていた部分を見つけたのですが

 PHP Notice:  Undefined property: InboundEmail::$team_id in  /var/www/myapp/sugarcrm/modules/Schedulers/_AddJobsHere.php on line 104

 これの原因は後回し。おそらく、インバウンドメールに対応するチームを設定していないからと思います。
 ⇒画面で見ても項目見当たらないし、まだそこまでの運用に載ってない。

 で、ログを吐いている部分を確認。

 $GLOBALS['log']->debug('Trying to connect to mailserver for [ '.$a['name'].' ]');

 どこかにログを吐いていそうなことが分かったので、ログのファイルを検索

2.ログの内容を見てみる


 > locate *sugar*.log
 /var/www/myapp/sugarcrm/sugarcrm.log
 /var/www/myapp/sugarcrm/sugarcrm_05_2014.log
 /var/www/myapp/sugarcrm/sugarcrm_06_2014.log

 ということで、月別にログを吐いていそうなことがわかりました。

 ログの中を見ると、fatalだけが出力されています。内容からしてlog4j的なライブラリだろうと思い、ログの設定をしている所を探して、修正することにします。

3.ログ設定の修正

vim /var/www/myapp/sugarcrm/config.php

 前
     'level' => 'fatal',
 
 後
     'level' => 'debug',

 phpなので、何かの再起動は不要のようでした。

4.再度cron.phpを呼び出す


 ものすごい勢いでDEBUG のログが吐かれてました。
 中を見てみて、当りがついたので対処完了。
 config.phpを元に戻して終了です。

ログ関連の概略は掴めたので、この後の運用も楽になりそうです。


ちなみに、発生事象だった「インバウンドメールが入ってこない件」は、
IMAPサーバー側の「未読」「既読」が関係していました。

全てのメールを「未読」に戻したら、大量に入ってきました。

2014年6月10日火曜日

SugarCRMにて「メール」を自動的に取り込む。

連投です。

先述の勘違い(取引先と見込み客)を気づかせるきっかけとなったのが

「SugarCRMにて「メール」を自動的に取り込みたいのだけどもどうしたらよいか」

という事でした。 (詳しくは前記事を参照ください)



結果としては、「できます」。どうやるかっていうと、

・「メール」の設定で、「インバウンドメール監視のセットアップ」という設定を用いて監視メールアカウントを設定
・cron.php というプログラムがあるので、それを、cronにて実行


というのがざっくりな流れです。

すると、メールのFromが、「取引先」または「取引先担当者」に設定されていれば、
その人の「ケース」として登録されます。


ちなみに、対象がいないと、純粋なケースとして登録されます。


活用はまだまだですが、ひとまず前進です。


SugarCRMの「リード」と「取引先」の概念

今更です。ちゃんと勉強しておけばよかったと思いました。

「リード」 ⇒ 見込客

これがすべての勘違い。というか早とちり

「リード」は、アクションを起こす前。の相手先であって、相手先としてアクションを起こした後は
「取引先」へのコンバートが必要でした。

SugarCRMでは、「取引が発生していない相手先」でも、アクションを管理するのは取引先です。


すべては自分の勘違いです。

類似で、「ケース」 = 「問い合わせ」 ってのも混乱しそう。まだ整理してません。
「コール」 も。
「コール」って「電話応対」と思ってたのですが、受け付けた、電話応対(問合せ)は
コールなのか、ケースなのか。未確認です。


今更なのですがちゃんと勉強してから着手すればよかったと思いました。

2014年5月30日金曜日

SugarCRMのアップグレード

難しそうなので放っておいたのですが、ウィザードもあり、複雑な作業が必要なさそうなので自前のSugarCRMをアップグレードする事にしました。

環境

・Cent 6.5
・SugarCRM 5.2.0j

今回作業の到着地点

sugarCRM 6.5系 へのアップグレード完了

要約

・アップグレードウィザードでファイルを読み込ませると実行してくれる。
 ⇒「管理」→「アップグレードウィザード」

・アップグレードは、バージョンごと行う必要がある。
 ⇒zipファイル名に、fromバージョン、toバージョンがある。
  sourceforge.net に、ファイルがあるので必要数分取得
  http://sourceforge.net/projects/sugarcrm/files/

事前準備

・公式サイト等々にもある通り、データはバックアップしておきましょう。
 きちんとしている方は、ちゃんとマニュアル読むことをお勧めします。

 ・mysqlのバックアップ
  mysqldump -R -uusername –ppassword sugarcrm > sugarcrm.sql.dmp

 ・モジュール類のバックアップ
  tar –cvf sugarcrm.tar sugarcrm/

 重要5.x 系と、6.x系では、ウィザードの手順、画面構成に一部違いがありました。
 本画面例は5.x系のものですが、大きな違いはありませんでした。

手順

・事前に、必要なzipファイルを入手しておきます。

・「管理」→「アップグレードウィザード」を選択します。

・ファイルをアップロードします
 ⇒複数一気にいけそうな気配の画面ですが、更新できるのは1つでした。
 ⇒対応外のファイルをアップロードしても、認識されないようです。

img_000010


・「次へ」ボタンを押すと事前チェックが開始されます。 多少、時間がかかります。

img_000011


・事前チェックの完了メッセージが表示されるので、「次へ」を押します。

img_000001


・またしばらく待ちになります。

img_000002


・「次へ」を押します。また待ちになります。

img_000003


・処理が完了となりました。

 引き続きアップデートを続ける場合には一旦ログアウトを促されるので、
 指示に従いログアウト、再度ログインします。


・管理画面へ戻ると、バージョンアップされていることを確認できます


2014年4月15日火曜日

SugarCRMでメールを活用する

ひとまずやりたいことは、以下

1) SugarCRMから、メールを送受信したい。
2) メール送受信には、テンプレートを使いたい
3) メールの送受信は、取引先と関連付けたい

というわけで、ひとつずつ進めてみようと思います。

長くなりそうなので記事分けます。ひとまずメールの送受信から。


1) メールの送受信

きちんとドキュメントを読みたい方は、以下にあります。

基本的な設定は、おそらく、「管理」→「メール設定」です。
おそらくってのは、この記事書いてるときにはすでに実現できてしまっていて、
今更変えると怖いので検証していないから。ってのが理由です。
自分は、メール送信エージェントに、管理用のメールアカウントのID、パス、ポート等を設定しています。

その後、自分の設定として、「活動」→「電子メール」を開き、
「設定」から、「メールアカウント」タブを開き、
よくあるメールクライアントの設定要領で必要情報を設定します。
この際、「送信メールサーバー」に、先ほど「管理」で設定したメールサーバーが
出てきますので、選びます。


これだけで、送受信は可能になりました。

が、メールヘッダが化ける。
というか一時は本文も化けてました。
本文は、メールの設定でHTMLを使わないようにすれば回避できました。
・電子メール -> 設定 -> 一般 -> 「電子メールをテキストで送信」にチェックOn 、文字コードセットをISO-2022-JP
で、「保存」を押す。間違っても「完了」を押して保存した気にならないようにしてください!

この辺でタイムアウトとなってしまったので、時間ができたら、
件名、および添付ファイル名の文字化けを直していきたいと思います。

2014年4月7日月曜日

SugarCRMで任意の項目を追加する

使えば使うほど、使えそうなSugarCRMですが、
リードと取引先に情報の追加がしたくなったのでやってみました。

結果としては、相当簡単でした。

項目を追加する場合の手順

管理 -> スタジオ -> モジュール より、該当のデータを選択

1) 「フィールド」→「フィールドの追加」→ 必要事項を入力して保存
  ※urlの場合、Linkを選択
  ※先に選択しないと入力内容がクリアされるので注意
2) 「レイアウト」→「編集ビュー」→追加した項目をドラッグアンドドロップ
  行を追加したい場合には「ツールボックス」より「新規の行」で追加した後、
  必要な項目をドラッグアンドドロップ
3) 必要に応じ、「詳細ビュー」「一覧ビュー」も修正

ビューを修正したら、「保存して配置」とやると、反映されます。


追加ができるってことは、変更も並び替えも、削除もできます。


このスタジオって機能、使えば使うほどすごそうですね。
検索ウインドウですらカスタマイズ可能。



よし。この仕組みを業務システムへ持っていこう。

2014年3月24日月曜日

sugarcrmにてログインパスワードを忘れてしまった場合の対処方法

sugarcrmにてログインパスワードを忘れてしまったときの対処です。
自分でやらかしてしまったので、備忘録的にメモ。

フォーラムで紹介されていたものの転用です。

なお、画面やツール等は提供されていないので、データベースの値を
直接変更する必要があります。


1)mysqlへログイン

$mysql -uusername -pPassword

2)データベースを選択

use sugarcrm

3)ユーザーを確認

mysql> select id,user_name,user_hash from users;
+--------------------------------------+----------------------+----------------------------------+
| id                                   | user_name      | user_hash                              |
+--------------------------------------+----------------------+----------------------------------+
| 1                                    | admin          | 06b277a9ac1c17d4e1ac8420258df870       |
| 92b52357-03c2-a86a-b2a6-52a5754d10ee | NULL           | NULL                                   |
| a41b1dc0-7a35-53bf-9365-52a576c3a36f | username1      | 7c5d92e64c229fb078825416aeb8c63e       |
| 86767bc1-b3b9-0849-c875-52a577d97fc3 | username2      | 7fe2434a2c4fb1994c39991c55f42b55       |
+--------------------------------------+----------------------+----------------------------------+

idを確認します。

4)パスワードを変更

update users set user_hash = '4a7d1ed414474e4033ac29ccb8653d9b' where id = 'a41b1dc0-7a35-53bf-9365-52a576c3a36f';


パスワードはmd5ハッシュとなっています。本サンプルでは'0000'を指定しています。

これで、ログイン画面からパスワード0000でログインできるようになりました。

2013年12月11日水曜日

SugarCRMのインストール

CRMによる顧客管理が必要かな?と思い、やってみました。

構築対象とする機器の前提

MySQL,PHP,Apacheが動作する環境(CentOS)

参考にしたドキュメント

SugarCRM インストールガイド
http://sugarforum.jp/wiki/SugarCRM_%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%82%AC%E3%82%A4%E3%83%89

手順

○5.2のフルパックをダウンロード
#wget http://www.sugarforge.org/frs/download.php/6004/SugarCE-Full-5.2.0j-Ja.zip

○unzipにて展開
# unzip SugarCE-Full-5.2.0j-Ja.zip

こちら、一式丸ごとのようなので、そのまま配置ディレクトリへ展開
※ディレクトリはご自由に設定してください

# mv SugarCE-Full-5.2.0j-Ja /var/www/myapp/sugarcrm

○権限を付与
# chown apache sugarcrm/ -R

○httpd.confを作成
 ここでは、sugarcrm用のものを作成しました。
# cd /etc/httpd/conf.d/
# vim sugarcrm.conf

Alias /sugarcrm /var/www/myapp/sugarcrm

<Directory "/var/www/myapp/sugarcrm">
    Options FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all

    php_value memory_limit 128M
    php_value post_max_size 16M
    php_value upload_max_filesize 20M
    php_value date.timezone Asia/Tokyo
</Directory>


○Configの内容を確認

# apachectl -t
Syntax OK

○configの読み直し
# service httpd reload
Reloading httpd:

○確認してみたが・・・

アクセスしてみたところ、
「PHPのバージョンは5.1.0以上である必要があります。(5.2.x以上推奨)」と出て、進まない。


ん?と思い、確認してみたところ、

# php --version
PHP 5.3.3 (cli) (built: Jul 12 2013 20:35:47)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

ということで、合っているなと思いつつ、エラーメッセージをgoogleさんに投げると、Hit

サポート外という事ですが、対処法が載っていました。

http://sugarforum.jp/wiki/PHP5.3%E7%92%B0%E5%A2%83%E3%81%A7%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B

install/welcome.phpの以下の部分を編集して、再挑戦

if (version_compare(phpversion(),'5.1.0') < 0 || version_compare(phpversion(),'5.3.0') >= 0) {


無事に初期セットアップ画面が開きました



利用規約に同意



通常インストールを選択


MySQL1択なのでそのまま次へ


データベースを作成できます。
今回は新しく作ることにしました。


管理者用のパスワードを指定


その他細かい環境設定などを指定

登録確認の画面が出るので、「次へ」

しばらくしたら、インストール完了画面が出るので、改めてwebサイトへアクセス

ログイン画面で、初期ユーザー[admin]とパスワード入力によりログインできるようになりました。



追記


セットアップの時にデモデータを入れた場合、画面機能として「初期化をする」ものはないとのことなので、再インストールが必要となるそうです。

config.phpの以下の分を、falseに変更すれば再インストールの画面を開く事が出来ました。
'installer_locked' => true,