Package.xml

[typesのnameに何を使うかは、10章のメタデータ型を参照](http://salesforcedevjp.s3.amazonaws.com/developer/docs/api_meta/api_meta.pdf)
[こちらはHTML版](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_types_list.htm)

[Translationリソースのtype名はここから](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_translations.htm)
#### Custom Field
オブジェクトAPI名.フィールドAPI名

```HTML
  <types>
    <members>CustomXXX__c.CustomXXX__c</members>
    <name>CustomField</name>
  </types>

```

#### オブジェクトに関する日本語ラベル（Tranlation Workbench)
"CustomObjectTranslation"と更新した要素を一緒にデプロイする


```HTML
  <types>
    <members>Account.Field1__c</members>
    <members>Account.Field2__c</members>
    <name>CustomField</name>
  </types>
  <types>
    <members>Account-ja</members>
    <name>CustomObjectTranslation</name>
  </types>

```
####ヘルプテキスト
項目またはオブジェクトをリリースすると、ヘルプテキストも一緒にデプロイされる

```html
  <types>
    <members>Contact_xxx__c</members>
    <name>CustomObject</name>
  </types>
  <types>
    <members>Contact_xxx__c-ja</members>
    <name>CustomObjectTranslation</name>
  </types>
```

####オブジェクトの入力規則
日本語リソースは -ja リソースを一緒にデプロイする

```html
   <types>
    <members>Contact-ja</members>
    <name>CustomObjectTranslation</name>
  </types>
  <types>
    <members>Contact.my_rule</members>
    <name>ValidationRule</name>
  </types>
```

####レイアウトと日本語ラベル
セクション名のラベルは日本語リソース（-ja）と一緒にデプロイする

```html
  <types>
    <members>Account-ja</members>
    <name>CustomObjectTranslation</name>
  </types>
  <types>
    <members>Account-CustomerLayout</members>
    <name>Layout</name>
  </types>

```

####リストビュー
翻訳リソースはなし。

```html
  <types>
    <members>Activity.MyTeamTasks</members>
    <members>Activity.MyTeamEvents</members>
    <name>ListView</name>
  </types>
```
####カスタムラベル
日本語リソースをデプロイする場合は、Translations-jaを使用する。

```html
<types>
  <members>quoteManual</members>
  <members>quoteAuto</members>
  <name>CustomLabel</name>
</types>
<types>
  <members>ja</members>
  <name>Translations</name>
</types>
```

####レコードタイプとラベル名(日本語訳）
```HTML
  <types>
    <members>Opportunity-ja</members>
    <name>CustomObjectTranslation</name>
  </types>
  <types>
    <members>Opportunity.xx_recordtype</members>
    <name>RecordType</name>
  </types>
```
description(説明）はpackage.xml ではデプロイできない（2017/7月時点）

####レコードタイプ フィールド別の選択肢
カスタムフィールドとレコードタイプを一緒にデプロイする

```HTML
  <types>
    <members>Opportunity.CustomXXX__c</members>
    <name>CustomField</name>
  </types>
  <types>
    <members>Opportunity.MyRecordType</members>
    <name>RecordType</name>
  </types>
```

####FLS（項目レベルセキュリティ）
システム管理者に対する権限をデプロイする場合は 'Admin'を指定する

```html
  <types>
    <members>Opportunity.ProductName__c</members>
    <name>CustomField</name>
  </types>
  <types>
    <members>Admin</members>
    <name>Profile</name>
  </types>

```

###オブジェクトに対する権限（CRUD+All read+All update)
オブジェクトとProfileを同時にデプロイする。
Profileだけデプロイすると、user permissionだけが含まれる

```html
  <types>
    <members>Account</members>
    <name>CustomObject</name>
  </types>
  <types>
    <members>Marketing User</members>
    <members>Admin User</members>
    <name>Profile</name>
  </types>
```

####選択リスト値セット（Global Valueset)
名前を指定

```HTML
  <types>
    <members>XxxGlobalPicklist</members>
    <name>GlobalValueSet</name>
  </types>

```

####項目の依存関係
項目間の依存関係をデプロイするには、依存関係をセットした2つのフィールド（picklist)
を同時にデプロイする。

####商談の取引先責任者のロール
日本語リソースも一緒にデプロイ

```html
  <types>
    <members>ContactRole</members>
    <name>StandardValueSet</name>
  </types>
  <types>
    <members>ContactRole-ja</members>
    <name>StandardValueSetTranslation</name>
  </types>
```
[StandardValueSetの対応はこちらを参照](https://developer.salesforce.com/docs/atlas.ja-jp.api_meta.meta/api_meta/standardvalueset_names.htm)

####デフォルトの商談チームのロール
日本語リソースも一緒にデプロイ

```html
<types>
  <members>SalesTeamRole</members>
  <name>StandardValueSet</name>
</types>
<types>
  <members>SalesTeamRole-ja</members>
  <name>StandardValueSetTranslation</name>
</types>
```

####タブ名の変更
```HTML
オブジェクトAPI名-ja で日本語リソースを取得

  <types>
    <members>Custom_XXX__c-ja</members>
    <name>CustomObjectTranslation</name>
  </types>

```
####カスタムタブ（VFPage tab）
Translations-ja で日本語リソースを取得
タブのプロファイル設定も一緒にデプロイすること。

```HTML
<types>
  <members>VFCustomTabName</members>
  <name>CustomTab</name>
</types>
<types>
  <members>ProfileA</members>
  <name>Profile</name>
</types>
  <types>
    <members>ja</members>
    <name>Translations</name>
  </types>
```

####カスタムボタンとリンク
WebLinkを選ぶ

```HTML
//link
  <types>
    <members>Campaign-ja</members>
    <name>CustomObjectTranslation</name>
  </types>
  <types>
    <members>Campaign.alink</members>
    <name>WebLink</name>
  </types>

//button
  <types>
    <members>IBase__c-ja</members>
    <name>CustomObjectTranslation</name>
  </types>
  <types>
    <members>IBase__c.Edit</members>
    <name>WebLink</name>
  </types>

```

####アクション
QuickActionを選ぶ

```html
  <types>
    <members>Opportunity.my_action</members>
    <name>QuickAction</name>
  </types>
```

####ホームのカスタムリンク
CustomPageWebLinkを選ぶ。日本語リソースのデプロイは Translationsを付ける

```HTML
<types>
    <members>Training_Materials</members>
    <name>CustomPageWebLink</name>
</types>
<types>
    <members>ja</members>
    <name>Translations</name>
</types>
```

####レポート&ダッシュボード
フォルダ自身も一緒にメンバー指定するのを忘れないように。

```html
 <types>
    <members>folderA</members>
    <members>folderA/SalesReport</members>
    <name>Report</name>
  </types>
  <types>
    <members>folderB</members>
    <members>folderB/SalesDashboard</members>
    <name>Dashboard</name>
  </types>
```

####コンパクトレイアウト
レコードタイプへの割り当てをデプロイする場合はレコードタイプを。
デフォルトの割り当てをデプロイする場合は、オブジェクトそのものを一緒にデプロイする。

```html
<types>
    <members>Event.Event_layout</members>
    <name>CompactLayout</name>
</types>
<types>
    <members>Event.anEventRecordType</members>
    <name>RecordType</name>
</types>
<types>
    <members>Event</members>
    <name>CustomObject</name>
</types> 
```

####項目のValidation（数式チェック）
下記は日本語メッセージ用にCustomObjectTranslationを含めている

```html
<types>
    <members>Contact-ja</members>
    <name>CustomObjectTranslation</name>
</types>
<types>
   <members>Contact.NumberCheck</members>
   <name>ValidationRule</name>
</types>

```

####ホームページレイアウト
HomePageLayoutを選択、コンポーネントを追加した場合は HomePageComponentを使う

```HTML
<types>
  <members>My HomePage</members>
  <name>HomePageLayout</name>
</types>
<types>
   <members>My HomePageComponent</members>
   <name>HomePageComponent</name>
</types>

```

####共有ルール
SharingOwnerRule または SaringCriteriaRuleを指定する

```HTML
<types>
  <members>Campaign.Campaign_Sharing_rule</members>
  <name>SharingCriteriaRule</name>
</types>

```

####カスタムアプリケーション

```HTML
<types>
  <members>MyProject</members>
  <name>CustomApplication</name>
</types>
```