7
1

個人的Salesforceのわかりにくいメタデータ名一覧

Last updated at Posted at 2023-12-17

この記事はAteam LifeDesign Advent Calendar 2023の18日目記事です。

はじめに

突然ですが、SalesforceDX便利ですよね。
便利ですが、使い始めてすぐだと〇〇てメタデータだと何?となることが多いとおもます。
今まで自分が〇〇てどこだろうと探したことのあるメタデータについて備忘録として記事にします。

チームメンバーに〇〇てどこ?と聞かれたり
自分でも〇〇のメタデータどこ?となった場合はこの記事に足していきます。

Lightning レコードページ

FlexiPageです。
Salesforce上の画面表示と違うので最初は少し紛らわしいですよね。

<types>
  <name>FlexiPage</name>
</types>

選択リスト値

カスタム項目

素直にCustomFieldですね

<types>
  <name>CustomField</name>
</types>
<?xml version="1.0" encoding="UTF-8"?>
<CustomField xmlns="http://soap.sforce.com/2006/04/metadata">
    <fullName>Test__c</fullName>
    <externalId>false</externalId>
    <label>テスト_選択リスト</label>
    <required>false</required>
    <trackFeedHistory>false</trackFeedHistory>
    <type>Picklist</type>
    <valueSet>
        <restricted>true</restricted>
        <valueSetDefinition>
            <sorted>false</sorted>
            <value>
                <fullName>A</fullName>
                <default>false</default>
                <label>A</label>
            </value>
            <value>
                <fullName>B</fullName>
                <default>false</default>
                <label>B</label>
            </value>
        </valueSetDefinition>
    </valueSet>
</CustomField>

標準項目

StandardValueSetです

    <types>
        <name>StandardValueSet</name>
    </types>

CustomFieldの中に直接選択リスト値は存在せず
StandardValueSetに定義されています。

<?xml version="1.0" encoding="UTF-8"?>
<CustomField xmlns="http://soap.sforce.com/2006/04/metadata">
    <fullName>Rating</fullName>
    <trackFeedHistory>false</trackFeedHistory>
    <type>Picklist</type>
</CustomField>
<?xml version="1.0" encoding="UTF-8"?>
<StandardValueSet xmlns="http://soap.sforce.com/2006/04/metadata">
    <sorted>false</sorted>
    <standardValue>
        <fullName>Hot</fullName>
        <default>false</default>
        <label>Hot</label>
    </standardValue>
    <standardValue>
        <fullName>Warm</fullName>
        <default>false</default>
        <label>Warm</label>
    </standardValue>
    <standardValue>
        <fullName>Cold</fullName>
        <default>false</default>
        <label>Cold</label>
    </standardValue>
</StandardValueSet>

選択リスト値セット(グローバル値セット)を使用いている場合

GlobalValueSetです。

    <types>
        <name>GlobalValueSet</name>
    </types>

valueSetvalueSetNameに選択リスト値セット(グローバル値セット)のAPI参照名が定義されます。

<?xml version="1.0" encoding="UTF-8"?>
<CustomField xmlns="http://soap.sforce.com/2006/04/metadata">
    <fullName>Test__c</fullName>
    <externalId>false</externalId>
    <label>テスト</label>
    <required>false</required>
    <trackHistory>false</trackHistory>
    <type>Picklist</type>
    <valueSet>
        <restricted>true</restricted>
        <valueSetName>TestList</valueSetName>
    </valueSet>
</CustomField>

Lightningページの割り当て

CustomApplicationです。

<types>
    <name>CustomApplication</name>
</types>

取引先-Salesforce (2).png

Salesforceの画面で見るとプロファイルに設定されてそうな気もしますが、アプリケーションのメタデータの中に設定は存在します。

CustomApplicationprofileActionOverridesの中にページ名とプロファイル名がマッピングされています。

<?xml version="1.0" encoding="UTF-8"?>
<CustomApplication xmlns="http://soap.sforce.com/2006/04/metadata">
   <profileActionOverrides>
        <actionName>View</actionName>
        <content>FlexiPage</content>
        <formFactor>Small</formFactor>
        <pageOrSobjectType>Account</pageOrSobjectType>
        <type>Flexipage</type>
        <profile>Admin</profile>
    </profileActionOverrides>
    <profileActionOverrides>
        <actionName>View</actionName>
        <content>FlexiPage</content>
        <formFactor>Large</formFactor>
        <pageOrSobjectType>Account</pageOrSobjectType>
        <type>Flexipage</type>
        <profile>Admin</profile>
    </profileActionOverrides>

ユーティリティバー

FlexiPageです。

<types>
  <name>FlexiPage</name>
</types>

アプリケーションかと思いきや実は違います。
ユーティリティバー自体はFlexiPageで定義されています。
どこまで定義されているかというと

アプリケーション内のナビゲーション項目のプロパティ設定の値まで定義されています。
個人的には、アプリケーション内でユーティリティバーにプロパティ設定を渡すというメタデータになっていると思い込んでいたので
数回リリース忘れを起こしましたね...

スクリーンショット 2023-12-17 16.59.59.png

さいごに

どうしてもSalesforceのコード以外の部分は画面から作るので、メタデータ名を意識することが少なくて初めは慣れませんが
慣れると

  • メタデータ書き換えた方が早く作れる
  • メタデータコピーして作り始めると早く作れる

とか気づきことがたくさんあると思います。

SalesforceDXを使って間もない方にこの記事が少しでも役に立つと嬉しいです。

7
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
1