Drupalモジュールを使用すると、ユーザーはサインアップして独自の資金調達ページを作成できます。すべてのDrupalユーザーは、情報が含まれる同等のCiviCRMプロファイルと照合されます。 Drupalモジュールは、CiviCRMから情報を読み取り、調達額や連絡先情報などのカスタムレポートを表示します。
システム内にあり、他のメンバーのプロファイルに何らかの形でオーバーレイされている1つの電子メールがあります。電子メールの所有者はページを作成していません。彼らの電子メールがどのようにシステムに侵入したのかわかりません。それはすでに2回起こっています。メールで、メールアカウントの所有者は彼らが正しい人ではないと答えました。
これがどのように起こったのか、そしてそれを修正する方法はありますか?
CiviCRMにはテーブルcivicrm_uf_match
があり、CiviCRMの連絡先をDrupal(またはWordpressまたはJoomla)ユーザーにリンクします。その構造は次のとおりです。
CREATE TABLE `civicrm_uf_match` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'System generated ID.',
`domain_id` int(10) unsigned NOT NULL COMMENT 'Which Domain is this match entry for',
`uf_id` int(10) unsigned NOT NULL COMMENT 'UF ID',
`uf_name` varchar(128) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'UF Name',
`contact_id` int(10) unsigned DEFAULT NULL COMMENT 'FK to Contact ID',
`language` varchar(5) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'UI language preferred by the given user/contact',
PRIMARY KEY (`id`),
UNIQUE KEY `UI_uf_name_domain_id` (`uf_name`,`domain_id`),
UNIQUE KEY `UI_contact_domain_id` (`contact_id`,`domain_id`),
KEY `FK_civicrm_uf_match_domain_id` (`domain_id`),
KEY `I_civicrm_uf_match_uf_id` (`uf_id`),
CONSTRAINT `FK_civicrm_uf_match_contact_id` FOREIGN KEY (`contact_id`) REFERENCES `civicrm_contact` (`id`) ON DELETE CASCADE,
CONSTRAINT `FK_civicrm_uf_match_domain_id` FOREIGN KEY (`domain_id`) REFERENCES `civicrm_domain` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4997 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
「UF」は、基礎となるフレームワーク、つまりDrupal、Wordpress、またはCiviCRMがリンクされているJoomlaインストール)を表します。
このテーブルのエントリが同期しなくなることがあります。 Drupalデータベースが、CiviCRMデータベースもコピーせずに、開発サーバーからテストサーバーにコピーされた場合。
おそらくそれがこの場合に起こったことです。 civicrm_uf_match
フィールドに保存されている関連する電子メールアドレスのuf_name
レコードを調べることで確認できます。
civicrm_uf_match
をDrupal users
テーブルに結合し、civicrm_uf_match
の電子メールがの電子メールと異なるレコードを確認することも役立ちます。 users
。また、civicrm_uf_match
からusers
への左結合は、孤立したcivicrm_uf_match
エントリを強調表示できます。