パッケージ内のコンポーネントの特殊な動作
配布するアプリケーションを構築するときには、パッケージ化によるアプリケーションおよびコンポーネントへの影響を考慮することが重要です。次の情報を参考にして、パッケージに含めるもの、アプリケーションの設計方法、およびパッケージの配布方法 (管理または未管理) を決定してください。
- レポート作成スナップショット
- 管理パッケージの開発者は、パッケージの前のバージョンでリリースされたレポートを参照するレポート作成スナップショットを導入することの意味を考慮する必要があります。登録者がレポートを削除したり、個人フォルダにレポートを移動したりすると、たとえパッケージインストールのページでインストールされることが示されている場合でも、そのレポートを参照するレポート作成スナップショットはインストールされません。また、登録者がレポートを変更した場合は、そのレポートではレポート作成スナップショットで表示される情報に影響する結果が返される可能性があります。そのため、開発者はレポート作成スナップショットとその関連レポートを同じバージョンでリリースする必要があります。
- 実行ユーザは登録者が選択するため、実行ユーザがソース項目または対象項目にアクセスできない場合は、一部のレポート作成スナップショット項目の対応付けが無効になる可能性があります。
- Apex クラスまたはトリガ
-
パッケージの一部として含まれている Apex はいずれも、累積テストカバー率が少なくとも 75% である必要があります。各トリガについても何らかのテストを行う必要があります。パッケージを AppExchange にアップロードすると、すべてのテストが実行され、エラーがない状態で実行されていることが確認されます。また、インストーラの組織にパッケージがインストールされるときにも、すべてのテストが実行されます。インストーラは、テストに失敗した場合にパッケージをインストールするかどうかを決めることができます。
- パッケージに Apex を含めるときの考慮事項は、次のとおりです。
- 管理パッケージは、一意の名前空間を受け取ります。この名前空間は、インストール先の組織で名前の重複を防ぐために、クラス名、メソッド、変数などの先頭に自動的に追加されます。
- 1 つのトランザクションでは、10 個の一意の名前空間のみを参照できます。たとえば、オブジェクトを更新するときに、管理パッケージでクラスを実行するオブジェクトがあるとします。その後、クラスは 2 番目のオブジェクトを更新します。つまり、他のパッケージの他のクラスを実行します。最初に 2 番目のパッケージに直接アクセスしない場合でも、同じトランザクション内で発生するため、1 つのトランザクションでアクセスする名前空間の数に含まれます。
- メソッドを Web サービスとして公開する場合は、登録者が Web サービスを呼び出す外部コードを記述できるように、詳細を説明したドキュメントを含めてください。
- Apex クラスがカスタム表示ラベルを参照していて、その表示ラベルが翻訳されている場合、翻訳がパッケージに含まれるようにするには、必要な個々の言語を明示的にパッケージ化する必要があります。
- Apex でカスタムオブジェクトの共有オブジェクト (MyCustomObject__share など) を参照すると、共有モデルの連動関係がパッケージに追加されます。他の組織がパッケージを正常にインストールできるようにするには、カスタムオブジェクトに対する組織の共有設定のアクセス権を [非公開] に設定する必要があります。
- 管理パッケージの一部である Apex クラスまたはトリガに含まれるコードは、自動的に隠され���インストール先の組織では見ることができません。唯一の例外には、グローバルとして宣言されているメソッドがあります。それらのメソッド署名はインストールを行う組織でも参照できます。
- Apex の deprecated アノテーションを使用して、今後のリリースの管理パッケージでは参照できない global メソッド、クラス、例外、列挙、インターフェース、変数を指定できます。要件の変化にともなって、管理パッケージのコードをリファクタリングする場合に役立ちます。別のパッケージバージョンを「管理-リリース済み」としてアップロードすると、最新のパッケージバージョンをインストールする新しい登録者に非推奨の要素が表示されることはありませんが、その要素は既存の登録者および API インテグレーションでは機能し続けます。
- 明示的に名前空間を参照する未管理パッケージに含まれる Apex は、アップロードできません。
- データカテゴリを参照する Apex コードは、アップロードできません。
- パッケージから Visualforce ページまたはグローバル Visualforce コンポーネントを削除する前に、削除するページまたはコンポーネントから公開 Apex クラスおよび公開 Visualforce コンポーネントへのすべての参照を削除します。参照を削除したら、ページまたはグローバルコンポーネントを削除する前に、登録者を中間パッケージバージョンにアップグレードします。
- Apex 共有の理由
- Apex 共有の理由は、パッケージに直接追加できますが、カスタムオブジェクトに対してしか使用できません。
- コンパクトレイアウト
- コンパクトレイアウトをパッケージ化する場合、そのレコードタイプの対応付けは含まれません。コンパクトレイアウトを含むパッケージの登録者またはインストーラは、そのレコードタイプの対応付けを各自の組織で再作成する必要があります。
- 接続アプリケーション
-
- 接続アプリケーションは、管理パッケージにのみ追加できます。未管理パッケージでは接続アプリケーションはサポートされていません。
- パッケージの登録者またはインストーラは、接続アプリケーションを単独で削除することはできません。そのパッケージのアンインストールのみを行えます。開発者は、パッケージが「管理-リリース済み」としてアップロードされた後に、接続アプリケーションを削除できます。接続アプリケーションは、パッケージのアップグレード中に登録者の組織で削除されます。
- 接続アプリケーションを更新して、それを新しいパッケージバージョンに含めると、顧客組織でそのパッケージをアップグレードすることで既存の接続アプリケーションが更新されます。
- OAuth 範囲または IP 範囲が前のバージョンから変更された接続アプリケーションを含むパッケージを転送アップグレードすると、アップグレードは失敗します。これは、インストール済みパッケージをアップグレードすることによって、顧客組織への広範なアクセス権を未承認ユーザが取得することをブロックするセキュリティ機能の一種です。この場合でも、顧客は同じパッケージのプルアップグレードを行えます。ただし、これは顧客の知識と同意がある場合に行えます。
- 既存の接続アプリケーション (つまり、Summer '13 よりも前に作成された接続アプリケーション) は、管理パッケージに追加できます。また、同じ管理パッケージに新しい接続アプリケーションと既存の接続アプリケーションを組み合わせることもできます。
- Summer '13 よりも前に作成された接続アプリケーションの場合、新しいバージョンをパッケージ化してアップロードするまで、既存のインストール URL をそのまま使用できます。更新済みの接続アプリケーションを含むパッケージの新しいバージョンがアップロードされると、そのインストール URL は機能しなくなります。
- カスタムコンソール
- カスタムコンソールコンポーネントがあるパッケージは、Service Cloud ライセンスがある組織か、「セールスコンソール」権限が有効になっている組織にのみインストールできます。
- カスタム項目
-
- カスタム項目の選択リスト項目値は、登録者が追加、編集、削除できます。コード内で選択リスト値を明示的に参照する場合、開発者はこの点を慎重に検討してください。選択リスト値は、開発者が追加または削除できます。パッケージのアップグレード時に、登録者の組織では、既存の項目に新しい選択リスト値はインストールされません。開発者が削除したすべての選択リスト値は、登録者の組織で引き続き使用できます。
- 開発者は、デフォルト値がある限り、必須のカスタム項目を管理パッケージに追加できます。
- 自動採番種別の項目および必須項目は、オブジェクトが管理-リリース済みパッケージでアップロードされた後には追加できません。
- カスタム表示ラベル
- 表示ラベルが翻訳されている場合、翻訳をパッケージに含めるには言語を明示的にパッケージに含める必要があります。登録者は、カスタム表示ラベルのデフォルトの翻訳を上書きできます。
- カスタムオブジェクト
-
- パッケージ化したカスタムオブジェクトで開発者が [レポートを許可] または [活動を許可] 属性を有効にすると、アップグレード時に登録者の組織でもこれらの機能が有効化されます。管理-リリース済みパッケージでこれらの属性を有効にすると、開発者と登録者のいずれもこれらを無効にできません。
- 標準ボタンおよびリンクの上書きも、パッケージ化できます。
- カスタム権限
- 接続アプリケーションを含むカスタム権限のある変更セットをリリースする場合、接続アプリケーションが対象組織にすでにインストールされている必要があります。
- カスタムレポートタイプ
- 開発者は、リリース後の管理パッケージ内のカスタムレポートタイプを編集し、新しい項目を追加できます。登録者は、管理パッケージの新しいバージョンをインストールするときに、こうした変更を自動的に受け取ります。ただし、開発者は、パッケージがリリースされた後にオブジェクトをレポートタイプから削除できません。管理パッケージの一部であるカスタムレポートタイプから項目を削除し、削除した項目がバケット化の一部であるかグループ化で使用されていると、エラーメッセージが表示されます。
- カスタム設定
- カスタムタブ
-
- カスタムタブの [タブスタイル] は、アプリケーション内で一意である必要があります。ただし、アプリケーションがインストールされた組織内では一意でなくてもかまいません。カスタムタブのスタイルは、インストーラの環境にある既存のカスタムタブとは競合しません。
- カスタムタブ名を異なる言語で表示するには、[設定] から [クイック検索] ボックスに「タブと表示ラベルの名称変更」と入力し、[タブと表示ラベルの名称変更] を選択します。
- 登録者は管理パッケージ内のカスタムタブを編集することはできません。
- カスタマーポータルとパートナーポータル
- カスタマーポータルまたはパートナーポータルの項目を参照するパッケージがサポートされています。パッケージをインストールするには、登録者はそれぞれのポータルを有効にしておく必要があります。
- ダッシュボードコンポーネント
- 管理パッケージの開発者は、パッケージの前のバージョンでリリースされたレポートを参照するダッシュボードコンポーネントを導入することの意味を考慮する必要があります。登録者がレポートを削除したり、個人フォルダにレポートを移動したりすると、そのレポートを参照するダッシュボードコンポーネントはインストールに含まれません。また、登録者がレポートを変更した場合は、そのレポートではダッシュボードコンポーネントで表示される情報に影響する結果が返される可能性があります。そのため、開発者はダッシュボードとその関連レポートを同じバージョンでリリースする必要があります。
- ディビジョン
-
- パッケージ内のカスタムオブジェクトでディビジョンが有効になっている場合、パッケージをインストールするには、登録者の組織でもディビジョン機能が有効になっている必要があります。
- レポートでディビジョン条件を設定しても、連動関係は設定されません。登録者の組織にインストールされるときに、設定は削除されます。
- レポートでオブジェクトのディビジョン項目 (たとえば取引先のディビジョン) を集計すると、連動関係が設定されます。
- レポート内のオブジェクトのディビジョン項目が列として含まれていて、登録者の組織がオブジェクトのディビジョンをサポートしていない場合、列はインストール時に削除されます。
- オブジェクトのディビジョン項目が列として含まれるカスタムレポートタイプをインストールすると、組織がディビジョンをサポートしていない場合、その列は削除されます。
- 外部データソース
-
-
外部データソースを管理パッケージまたは未管理パッケージからインストールした後、登録者は外部システムへの再認証を行う必要があります。
- パスワード認証の場合、登録者は外部データソース定義でパスワードを再入力する必要があります。
- OAuth の場合、登録者は認証プロバイダのクライアント設定でコールバック URL を更新し、外部データソースで [保存時に認証フローを開始] を選択して再認証する必要があります。
- 証明書はパッケージ化できません。証明書を指定する外部データソースをパッケージ化する場合は、同じ名前の有効な証明書が登録者組織に存在することを確認してください。
-
外部データソースを管理パッケージまたは未管理パッケージからインストールした後、登録者は外部システムへの再認証を行う必要があります。
- 外部オブジェクト
- 管理パッケージおよび未管理パッケージでは、外部オブジェクトはカスタムオブジェクトコンポーネントに含まれます。
- 項目の連動関係
-
- 開発者と登録者は、項目の連動関係を追加、変更、または削除できます。
- 開発者が項目の連動関係を追加すると、登録者がすでに同じ項目に連動関係を指定していない限り、この連動関係はインストール時に追加されます。
- 開発者が連動関係を削除すると、この変更はアップグレード時には登録者の組織で反映されません。
- 開発者が連動項目と制御項目間に新しい選択リスト値の対応付けを導入すると、この対応付けはアップグレード時に追加されます。
- 開発者が選択リスト値の対応付けを削除すると、この変更はアップグレード時には登録者の組織で反映されません。
- 項目セット
- インストール済みパッケージの項目セットでは、パッケージのアップグレード時に異なるマージ操作が行われます。
パッケージ開発者の操作 パッケージアップグレードでの動作 項目を [使用できません] から [項目セットで使用可能] または [項目セットで] に変更 変更された項目は、追加先がどの列であっても、アップグレードされた項目セットの最後に追加されます。 新規項目を追加 新規項目は、追加先がどの列であっても、アップグレードされた項目セットの最後に追加されます。 項目を [項目セットで使用可能] または [項目セットで] から [使用できません] に変更 項目は、アップグレードされた項目セットから削除されます。 項目を [項目セットで] から [項目セットで使用可能] に変更 (またはその逆) 変更はアップグレードされた項目セットには反映されません。 - 項目セットがインストールされると、登録者はどの項目でも追加または削除できます。
- フロー
-
- パッケージ化できるのは有効なフローのみです。フローの有効なバージョンは、パッケージバージョンをアップロードするときに決定されます。フローのバージョンがいずれも有効でない場合は、アップロードに失敗します。
- 異なるバージョンのフローで管理パッケージを更新するには、そのバージョンを有効化して、そのパッケージを再アップロードします。パッケージに新しく有効化されたバージョンを追加する必要はありません。ただし、誤ってフローバージョンを有効化し、パッケージをアップロードすると、そのフローバージョンが全ユーザに配布されます。確実にアップロードする必要があるバージョンであることを確認してください。
- 開発組織では、リリース済みまたはベータ管理パッケージにアップロードした後のフローまたはフローバージョンは削除できません。
- 開発組織の管理-ベータパッケージのインストールからはフローコンポーネントを削除できません。
- インストール済みのパッケージからフローを削除することはできません。パッケージ化されたフローを組織から削除するには、無効にしてからパッケージをアンインストールします。
- 複数の未管理パッケージからインストールされた複数のバージョンのあるフローがある場合は、そのパッケージをアンインストールすると 1 つのバージョンのみを削除できます。フローの単一のバージョンを含むパッケージ (管理または未管理) のアンインストールを行うと、すべてのバージョンを含むフロー全体が削除されます。
- フローをパッケージパッチに含めることはできません。
- パッケージの有効なフローは、インストール後は有効です。新しくインストールされたバージョンが優先され、対象組織のフローの以前の有効なバージョンは無効になります。現在無効になっているバージョンに基づく進行中のフローがある場合は、引き続き無停止で実行できますが、前のバージョンのフローが反映されます。
- 組織で管理パッケージのアップグレードを行うと、開発者からより新しいフローバージョンがリリースされている場合に限り、新しいフローバージョンがインストールされます。複数回アップグレードを行うと、フローバージョンが複数になることがあります。
- 新規の対象組織に複数のバージョンのフローを含むパッケージをインストールすると、最新バージョンのフローのみがリリースされます。
- 組織に存在するフローと同じ名前で、異なるバージョン番号を持つ未管理のパッケージからフローをインストールする場合、新たにインストールされたフローは、既存のフローの最新バージョンになります。ただし、パッケージ化されたフローの名前とバージョン番号が組織のフローのものと同じである場合、パッケージのインストールは失敗します。フローを上書きすることはできません。
- Cloud Flow Designer は、管理パッケージからインストールされたフローを開くことができません。
- フォルダ
-
- Salesforce でフォルダに格納されるコンポーネント (ドキュメントなど) が個人フォルダや未整理のフォルダに格納されている場合は、パッケージに追加できません。Salesforce でフォルダに格納されるドキュメント、レポート、その他のコンポーネントは、公開されているフォルダに保存してください。
- ドキュメント、メールテンプレート、レポートまたはダッシュボードなどのコンポーネントは、公開者のフォルダ名を使用してインストーラの組織の新規フォルダに格納されます。これらのフォルダには、パッケージの一部であることを示す名前を付けます。
- 新しいレポート、ダッシュボード、ドキュメント、またはメールテンプレートがアップグレード時にインストールされ、コンポーネントが含まれているフォルダが登録者によって削除されている場合、フォルダは再作成されます。以前に削除されたフォルダに格納されていたコンポーネントは復元されません。
- フォルダに含まれているコンポーネントの名前は、個人フォルダを除き、同じコンポーネントタイプのすべてのフォルダで一意である必要があります。個人フォルダに含まれているコンポーネントは、個人フォルダでのみ一意である必要があります。
- ホームページのコンポーネント
- カスタムホームページのレイアウトをパッケージ化すると、ページレイアウトに含まれ��いるすべてのカスタムホームページのコンポーネントが自動的に追加されます。「お知らせ」などの標準コンポーネントは、パッケージに含まれておらず、インストーラの「お知らせ」を上書きすることはありません。カスタムホームページのレイアウトにメッセージを含めるには、メッセージを含む HTML エリアタイプのカスタムホームタブのコンポーネントを作成します。[設定] から、[クイック検索] ボックスに「ホームページのコンポーネント」と入力し、[ホームページのコンポーネント] を選択します。次に、メッセージをカスタムホームページのレイアウトに追加します。
- ホームページのページレイアウト
- インストール後は、すべての登録者のホームページのページレイアウトが、カスタムホームページのレイアウトに表示されます。ページレイアウト名にアプリケーション名を含めることで、レイアウトを区別します。
- リストビュー
- クエリに関連付けられているリストビューをパッケージに含めることはできません。
- マルチ通貨
-
- オブジェクトの通貨項目が列として含まれるレポートまたはカスタムレポートタイプを登録者がインストールする場合、登録者の組織でマルチ通貨が有効にされていないと、その列は削除されます。
- レポートの条件でオブジェクトの通貨項目 ([取引先通貨]など) を参照すると、連動関係が設定されます。
- レポート内のオブジェクトの通貨項目を集計すると、連動関係が設定されます。
- レポート条件値で通貨指定 (たとえば、「年間売上 次の文字列と一致する GBP 100」) を使用すると、連動関係は設定されません。レポートでは、インストーラの組織で実行されるときに通貨をサポートしていない場合、エラーが生成されます。
- レポート内のオブジェクトの通貨項目が列として含まれていて、登録者の組織でマルチ通貨が有効にされていない場合、列はインストール時に削除されます。
- オブジェクトの通貨項目が列として含まれるカスタムレポートタイプを登録者がインストールする場合、組織でマルチ通貨が有効にされていないと、その列は削除されます。
- 指定ログイン情報
-
-
外部データソースを管理パッケージまたは未管理パッケージからインストールした後、登録者は外部システムへの再認証を行う必要があります。
- パスワード認証の場合、登録者は指定ログイン情報定義でパスワードを再入力する必要があります。
- OAuth の場合、登録者は認証プロバイダのクライアント設定でコールバック URL を更新し、指定ログイン情報で [保存時に認証フローを開始] を選択して再認証する必要があります。
- 指定ログイン情報はパッケージに自動的に追加されません。コールアウトエンドポイントとして指定ログイン情報を指定する Apex コードをパッケージ化する場合は、その指定ログイン情報も追加するか、登録者組織に同じ名前の有効な指定ログイン情報が存在することを確認してください。
複数の組織が有る場合、各組織に同じ名前の指定ログイン情報を作成できます。それぞれの指定ログイン情報には、開発環境と本番環境の違いに対応したりするため、異なるエンドポイント URL を含めることができます。コードは指定ログイン情報の名前のみを参照するため、プログラムで環境を確認することなく、同じ Apex クラスをパッケージ化してすべての組織にリリースできます。
参照される指定ログイン情報を含まない管理パッケージに Apex コードを追加する場合は、エンドポイントを指定するときに名前空間プレフィックスを含めます。名前空間が設定されていない登録者組織については、. 名前空間プレフィックスを使用して指定ログイン情報を参照します。以下に例を示します。1req.setEndpoint('callout:.__My_Named_Credential/some_path'); - 証明書はパッケージ化できません。証明書を指定する指定ログイン情報をパッケージ化する場合は、同じ名前の有効な証明書が登録者組織に存在することを確認してください。
-
外部データソースを管理パッケージまたは未管理パッケージからインストールした後、登録者は外部システムへの再認証を行う必要があります。
- ページレイアウト
- パッケージをアップロードするユーザのページレイアウトは、Group Edition および Professional Edition 組織で使用されるレイアウトであり、それが Enterprise Edition、Unlimited Edition、Performance Edition、Developer Edition 組織のデフォルトのページレイアウトになります。
- レイアウトが既存のオブジェクトにインストールされている場合、ページレイアウトは、補完的なレコードタイプと一緒にパッケージ化する必要があります。一緒にパッケージ化しない場合は、インストール済みのパッケージレイアウトを手動でプロファイルに適用する必要があります。
- ページレイアウトとレコードタイプがパッケージをインストールした結果作成されると、インストールまたはアップグレード時にプロファイルが対応付けられない限り、アップロードするユーザのこのレコードタイプに割り当てられたページレイアウトが、登録者組織のすべてのプロファイルの同じレコードタイプに割り当てられます。
- 権限セット
- パッケージには、次の権限およびアクセス設定を指定した権限セットをコンポーネントとして含めることができます。
- カスタムオブジェクト権限
- 外部オブジェクト権限
- カスタム項目権限
- カスタム権限
- カスタムタブ表示の設定
- Apex クラスのアクセス
- Visualforce ページのアクセス
- 外部データソースへのアクセス
- 権限のコレクションをインストールまたはアップグレードするには、権限セットを使用します。プロファイル設定とは対照的に、権限セットでプロファイルは上書きされません。
- 選択リスト値
-
- 登録者は選択リスト項目値の名前を変更または削除できます。Apex で選択リスト値を明示的に参照する場合、開発者はこの点を慎重に検討してください。
- 選択リスト項目値は、開発者の組織で追加または削除できます。アップグレード時に新しい値はインストールされません。開発者が削除した値は、登録者が削除するまで登録者の組織で引き続き使用できます。
- プロファイルの設定
- プロファイルの設定には、パッケージ内のコンポーネントについて次の項目が含まれます。
- 割り当てられたアプリケーション
- 割り当てられた接続アプリケーション
- タブ設定
- ページレイアウトの割り当て
- レコードタイプの割り当て
- カスタムオブジェクト権限
- 外部オブジェクト権限
- カスタム項目権限
- カスタム権限
- Apex クラスのアクセス
- Visualforce ページのアクセス
- 外部データソースへのアクセス
- プロファイルの設定により、インストーラの組織の既存のプロファイルが特定の権限および設定変更で上書きされます。
- レコードタイプ
-
- パッケージにレコードタイプが含まれている場合、パッケージをインストールするには、登録者の組織がレコードタイプをサポートしている必要があります。
- 新しい選択リスト値がインストールされると、その値は開発者が指定した対応付けに基づいて、インストール済みのすべてのレコードタイプに関連付けられます。登録者はこの関連付けを変更できます。
- レポートの条件でオブジェクトのレコードタイプ項目 ([取引先レコードタイプ] など) を参照すると、連動関係が設定されます。
- レポートの条件でオブジェクトのレコードタイプ項目 ([取引先レコードタイプ] など) を集計すると、連動関係が設定されます。
- オブジェクトのレコードタイプ項目が列としてレポートに含まれていて、登録者の組織がオブジェクトのレコードタイプを使用していないか、レコードタイプをサポートしていない場合、列はインストール時に削除されます。
- オブジェクトのレコードタイプ項目が列として含まれるカスタムレポートタイプをインストールすると、組織がレコートタイプをサポートしていないか、オブジェクトにレコードタイプが定義されていない場合、その列は削除されます。
- レポート
- レポートにパッケージ化できない要素が含まれている場合、その要素は削除またはダウングレードされるか、パッケージのアップロードに失敗します。たとえば、次のようになります。
- 活動および商談レポートから階層のドリルダウンが削除されます。
- パッケージ化できない項目の検索条件は、自動的に削除されます (たとえば、標準オブジェクトレコードタイプの検索条件)。
- パッケージ化できない項目の検索条件ロジック (標準オブジェクトレコードタイプの検索条件など) がレポートに含まれていると、パッケージのアップロードに失敗します。
- 標準のキャンペーンレポートの [キャンペーンの選択] 項目のルックアップ値は削除されます。
- レポートが非公開フォルダまたは [未整理公開レポート] フォルダに移動されると、レポートがパッケージから削除されます。
- Chart Analytics 2.0 が存在しない組織にパッケージをインストールすると、次のようになります。
- 組み合わせグラフは、削除される代わりにダウングレードされます。たとえば、折れ線を追加した組み合わせ縦棒グラフは単純な縦棒グラフにダウングレードされ、棒を追加した組み合わせ棒グラフは単純な棒グラフにダウングレードされます。
- ドーナツやじょうごなど、サポートされていないグラフの種類は削除されます。
- Sコントロール
- 登録者がインストールできるのは、2010 年 1 月 1 日以前に作成された未管理パッケージの Sコントロールのみです。
- Sコントロールは廃止され、Visualforce ページに置き換えられました。
- トランスレーションワークベンチ
-
- トランスレーションワークベンチを有効にして、パッケージに言語を追加した場合、関連付けられている翻訳された値は適切なコンポーネントと共に自動的にパッケージ化されます。可能なすべてのコンポーネントに翻訳が指定されていることを確認してください。
- パッケージのインストーラは、[パッケージの詳細] ページでサポートされている言語を確認できます。パッケージ化されている言語の翻訳は、インストーラが特定の機能を有効にしなくても表示されます。インストーラがトランスレーションワークベンチを有効にする必要があるのは、インストール後に未管理コンポーネントの翻訳を変更する場合や、管理パッケージのカスタム表示ラベルの翻訳を上書きする場合、またはその他の言語に翻訳する場合です。
- パッケージ拡張を設計する場合は、拡張コンポーネントの翻訳を含めることができますが、基本パッケージのコンポーネントに翻訳を追加することはできません。
- 入力規則
- パッケージ化されたカスタムオブジェクトの場合、関連する入力規則も暗黙的にパッケージ化されます。
- ワークフロー
-
- Salesforce では、公開グループ、パートナーユーザ、またはロール受信者が存在するワークフローアラートをアップロードできません。アプリケーションをアップロードする前に、受信者を特定のユーザに変更してください。インストール時に、Salesforce がこのユーザをアプリケーションをインストールするユーザに置き換えます。インストーラは必要に応じてアプリケーションをカスタマイズできます。
- Salesforce では、[所有者] 項目をキューに変更するワークフロー項目自動更新をアップロードできません。アプリケーションをアップロードする前に、更新された項目の値を特定のユーザに変更してください。インストール時に、Salesforce がこのユーザをアプリケーションをインストールするユーザに置き換えます。インストーラは必要に応じてアプリケーションをカスタマイズできます。
- Salesforce では、標準オブジェクトまたは管理-インストール済みオブジェクトのレコードタイプを参照するワークフロールール、項目自動更新、アウトバウンドメッセージをアップロードできません。
- Salesforce では、ロールに割り当てられるワークフロー ToDo をアップロードできません。アプリケーションをアップロードする前に、[割り当て先] 項目を特定のユーザに変更してください。インストール時に、Salesforce がこのユーザをアプリケーションをインストールするユーザに置き換えます。インストーラは必要に応じてアプリケーションをカスタマイズできます。
- ワークフロールールと、メールアラートや項目自動更新などの関連付けられたワークフローアクションをパッケージ化できます。ただし、時間ベースのトリガはパッケージに含まれません。アプリケーションに不可欠な時間ベースのトリガを設定するように、インストーラに通知してください。
フロートリガはパッケージ化できません。以前パイロットプログラムで利用できたフロートリガワークフローアクションが、Process Builder に置き換えられました。フロートリガワークフローアクションを使用している組織は、引き続き作成および編集できますが、新しい組織ではフロートリガワークフローアクションを使用できません。
- 開発者は一部のワークフローアクションを保護することができます。保護されたコンポーネントについての詳細は、「保護コンポーネント」を参照してください。
- 開発者は、ワークフローアクションとワークフロールールの関連付けをいつでも作成または削除できます。関連付けの削除を含むこれらの変更は、インストール時に登録者の組織で反映されます。管理パッケージでは、開発者によって関連付けられた場合、登録者は関連付けられているワークフロールールからワークフローアクションの関連付けを削除できません。
- ワークフローメールアラートのメール受信者など、ワークフローアクションで参照される特定のユーザは、パッケージをインストールするユーザに置き換えられます。ロール、公開グループ、取引先チーム、商談チーム、ケースチーム内の役割を参照するワークフローアクションはアップロードされない場合があります。
- ワークフローメールアラートの [差出人メールアドレス] など、組織の共有アドレスへの参照は、インストール中に現在のユーザにリセットされます。
- インストールまたはアップグレードされたパッケージで新しく作成したすべてのワークフロールールは、インストール時に、アップロードされたパッケージと同じ有効化状況になります。