Microsoft Dynamics 365 - Get Object Schema (オブジェクトスキーマの取得) アクション

このアクションは、Microsoft Dynamics 365 の特定のオブジェクトの名前とスキーマを取得します。このアクションを使用して、スキーマを取得し、データベースまたはデータウェアハウスに複製することができます。


動作の仕組み

基本情報

このアクションが実行されると、Workato は Microsoft Dynamics 365 API に対して、指定されたオブジェクトのスキーマを要求します。

リクエストが成功すると、Microsoft Dynamics 365 API は、オブジェクトの namelabel、および含まれる fields のリストで応答します。

例 : account オブジェクトには、nameemailaddress、および alternate_address フィールドが含まれます。このオブジェクトの例に対する JSON レスポンスを表示するには、以下をクリックしてください。

JSON レスポンスの例を表示
json
{
   "name":"account",
   "label":"Account",
   "fields":[
      {
         "name":"name",
         "label":"Name",
         "length":100,
         "scale":0,
         "precision":0,
         "original_type":"#Microsoft.Dynamics.CRM.StringAttributeMetadata",
         "mapped_type":"STRING",
         "custom":false
      },
      {
         "name":"emailaddress",
         "label":"Email address ",
         "length":100,
         "scale":0,
         "precision":0,
         "original_type":"#Microsoft.Dynamics.CRM.StringAttributeMetadata",
         "mapped_type":"STRING",
         "custom":false
      },
      {
         "name":"alternate_address",
         "label":"Alternate Address",
         "length":0,
         "precision":0,
         "scale":0,
         "original_type":"#Microsoft.Dynamics.CRM.PicklistAttributeMetadata",
         "mapped_type":"STRING",
         "custom":true,
         "fields":[
            {
               "name":"label",
               "label":"Label",
               "length":0,
               "scale":0,
               "precision":0,
               "original_type":null,
               "mapped_type":"STRING",
               "custom":false
            },
            {
               "name":"value",
               "label":"Internal value",
               "length":0,
               "scale":0,
               "precision":0,
               "original_type":null,
               "mapped_type":"INTEGER",
               "custom":false
            }
         ]
      }
   ]
}

データ型の定義

すべての field オブジェクトには、original_typemapped_type プロパティも含まれます。これらのプロパティは、Microsoft Dynamics 365 でのフィールドのデータ型、および Workato でどのデータ型にマッピングされるかを示します。これらのプロパティは、データベースへの読み込み時にデータ型がどのように定義されるかを決定します。

例 :

json
{
   "name":"budget_amount",
   "label":"Budget Amount",
   "length":1000,
   "scale":0,
   "precision":10000,
   "original_type":"#Microsoft.Dynamics.CRM.MoneyAttributeMetadata",
   "mapped_type":"DECIMAL",
   "custom":false
}

この例では、budget_amount フィールドは、Microsoft Dynamics 365 で MoneyAttributeMetadata 型と定義され、Workato の DECIMAL にマッピングされます。

詳細については、データ型のマッピングを参照してください。


入力

項目説明
ObjectMicrosoft Dynamics 365 から取得するオブジェクト。使用可能なオブジェクトのリストから選択するか、オブジェクトの名前を入力できます。

オブジェクトの名前を入力する場合は、まずアプリから名前を取得する必要がある可能性があります。
アプリの手順の表示
  1. Microsoft Dynamics 365 アプリで、[Settings] (歯車アイコン) > [Advanced Settings] に移動します。
  2. [Settings] メニューで、[Customization] > [Customizations] をクリックします。
  3. 次に、[Customize the System] > [Entities] の順に選択します。
  4. ページ左側のナビゲーションで、エンティティを探して選択します。
  5. エンティティに対する [General] タブで、[Name] フィールドを探します。

出力

このレシピの 出力 は、Microsoft Dynamics 365 オブジェクトのスキーマの詳細を示すオブジェクトになります。このオブジェクトには、オブジェクトのフィールドを記述する フィールド オブジェクトのリストが含まれます。

JSON オブジェクトの例については、基本情報を参照してください。

オブジェクト

項目説明
Nameオブジェクトの名前。例 : account
Labelオブジェクトの表示ラベル。例 : Account
Customtrue の場合、オブジェクトはユーザーにより作成されています。
Fieldsオブジェクトに含まれるフィールドのリスト。フィールドのスキーマについては、フィールドオブジェクトを参照してください。

フィールド

取得したオブジェクトの各フィールドには、以下の項目が含まれます。

項目説明
Nameフィールドの名前。例 : emailaddress
Labelフィールドの表示ラベル。例 : Email Address
Lengthフィールドに格納できる最大文字数。BOOLEAN フィールドや制限なしのフィールドについては、この値は 0 になります。
Scale小数点の右側の最大桁数。非数値フィールドについては、この値は 0 になります。
Precision列に格納できる最大桁数。小数点の左側と右側の桁数を含みます。非数値フィールドについては、この値は 0 になります。
Original typeMicrosoft Dynamics 365 でのこのフィールドのデータ型。例 : StringAttributeMetadata
Mapped typeoriginal_type が Workato でマッピングされるデータ型。この型を使用して、データベースへの読み込み時に列のデータ型が判断されます。詳細については、こちらを参照してください。
Customtrue の場合、このフィールドはユーザーにより作成されています。
FieldsOriginal type の値が、BooleanAttributeMetadataPicklistAttributeMetadataStatusAttributeMetadata、または StateAttributeMetadata のフィールドにのみ当てはまります。

存在する場合、fields プロパティには、labelvalue という2つのネストされたフィールドが含まれます。これらのフィールドは、トップレベルフィールドと同じスキーマを持ちます。以下に例を示します。
{
   [...],
   "fields":[
      {
         "name":"label",
         "label":"Label",
         "length":0,
         "scale":0,
         "precision":0,
         "original_type":null,
         "mapped_type":"STRING",
         "custom":false
      },
      {
         "name":"value",
         "label":"Internal value",
         "length":0,
         "scale":0,
         "precision":0,
         "original_type":null,
         "mapped_type":"INTEGER",
         "custom":false
      }
   ]
}
: ネストされたフィールドに対する mapped_type 値は、ネストされたフィールドの name に依存します。

  • label - この値は STRING になります。
  • value - 親フィールドの Original type の値が BooleanAttributeMetadata であれば、この値は BOOLEAN になります。それ以外の場合は、この値は INTEGER になります。

リファレンス

データ型のマッピング

以下の表は、Microsoft Dynamics 365 のデータ型が Workato のデータ型にどのようにマッピングされるかを示しています。

この表の列は以下のとおりです。

  • Microsoft Dynamics 365 のデータ型 - フィールドの original_type
  • Workato のマッピング型 - フィールドの mapped_type

例 : 値が original_type: BigIntAttributeMetadata のフィールドは、値 mapped_type: BIGINT にマッピングされます。

Microsoft Dynamics 365 のデータ型Workato のマッピング型
BigIntAttributeMetadataBIGINT
BooleanAttributeMetadataSTRING
DateTimeAttributeMetadataDATETIME_TZ
DecimalAttributeMetadataDECIMAL
DoubleAttributeMetadataFLOAT
EntityNameAttributeMetadataSTRING
FileAttributeMetadataSTRING
ImageAttributeMetadataSTRING
IntegerAttributeMetadataINTEGER
LookupAttributeMetadataSTRING
MemoAttributeMetadaMemoAttributeMetadatataSTRING
MoneyAttributeMetadataDECIMAL
MultiSelectPicklistAttributeMetadataSTRING
PicklistAttributeMetadataSTRING
StateAttributeMetadataSTRING
StatusAttributeMetadataSTRING
StringAttributeMetadataSTRING
UniqueIdentifierAttributeMetadataSTRING

Last updated: