スマートグループを直接静的グループに変換することはできますか?

他の多くのスマートグループに依存しているスマートグループがたくさんあります。私はこれらの以前のグループを通常のグループに変えてから、パフォーマンスを向上させるために1日に1回生成したいと思います。しかし、それらを削除し、他のすべてのグループを置換えで再構成することはかなり面倒なことになるので、私はそれらを変換できるかどうか疑問に思っています。

誰もこれを試しましたか? civicrm_groupを編集して以下を削除することはできますか?

  • saved_search_id
  • where_clause
  • select_tables
  • where_tables

?私が気づく必要がある問題があるかどうかは疑問です。

ベストアンサー

残念ながらいいえ、saved_search_idをNULLに更新すると、実際には通常のグループに変換されますが、スマートグループの場合は連絡先が定期的に再作成されるcivicrm_group_contact_cacheテーブル静的なcivicrm_group_contactからそのため、グループの連絡先を最初に再構築してから、データをキャッシュから静的テーブルに移動する必要があります

INSERT IGNORE INTO civicrm_group_contact (group_id, contact_id, status)
SELECT group_id, contact_id, 'Added' FROM civicrm_group_contact_cache 
  WHERE group_id IN (1);

HTH

Pradeep

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です