データを作成するために XRM ツールを使用する

CrmServiceClient クラス、または ServiceClient クラスで新しいデータと関連付けを作成するには、7 つの方法を使用できます。 XRM ツール API を使用する作成操作には、ペイロード データが必要です。 データ ペイロードは Dictionary<string, CrmDataTypeWrapper> オブジェクトの形式を取ります。 CrmDataTypeWrapper を使用して、参照するデータ ポイントに対してどのような処理を適用する必要があるか、インターフェイスに通知します。 データを作成する方法の一部がこのトピックに記載されています。

CreateNewRecord

このメソッドは、Microsoft Dataverse で任意のテーブル データ型を作成するために使用します。 これを使用するには、レコードを作成するテーブルのスキーマ名を知っている必要があり、それに渡すデータ ペイロードを構築する必要があります。 この例では、取引先企業レコードを作成します。

ServiceClient クラスを使用する場合、CRUDExtentions 名前空間で CreateNewRecord のメソッドを見つけることができます。

CrmServiceClient svc = new CrmServiceClient("connectionstring");
// ServiceClient svc = new ServiceClient("connectionstring");
 
// Verify that you are connected  
if (svc != null && svc.IsReady)  
{  
    // Create an account record  
    Dictionary<string, CrmDataTypeWrapper> inData = new Dictionary<string, CrmDataTypeWrapper>();  
    inData.Add("name", new CrmDataTypeWrapper("Sample Account Name", CrmFieldType.String));  
    inData.Add("address1_city", new CrmDataTypeWrapper("Redmond", CrmFieldType.String));  
    inData.Add("telephone1", new CrmDataTypeWrapper("555-0160", CrmFieldType.String));  
    accountId = ctrl.CrmConnectionMgr.svc.CreateNewRecord("account", inData);  
  
    // Verify if the account is created.  
    if (accountId != Guid.Empty)  
    {  
        Console.WriteLine(“Account created.”);  
    }  
}  
else  
{  
    // Display the last error.  
    Console.WriteLine("An error occurred: {0}", svc.LastCrmError);  
  
    // Display the last exception message if any.   
    Console.WriteLine(svc.LastCrmException.Message);  
    Console.WriteLine(svc.LastCrmException.Source);  
    Console.WriteLine(svc.LastCrmException.StackTrace);  
  
    return;  
}  

この例では、indata という名前のデータ ペイロード オブジェクトを作成しました。 次に、一般的な構文を使ってそれを設定します crmFieldName , new CrmDataTypeWrapper(data,CrmFieldType)。 作成する値を取得するために indata オブジェクトを設定後、CreateNewRecord メソッドを呼び出して、アカウントとデータ ペイロード (indata) のテーブル論理名を指定しました。

注意

XRM ツールを使用してテーブル レコードを作成し、CreateRequest メッセージを ExecuteCrmOrganizationRequest メソッドを使用して実行することもできます。 詳細: ExecuteCrmOrganizationRequest メソッドでメッセージを使用する

CreateAnnotation

このメソッドは、メモ オブジェクトを作成して、任意のテーブル レコードに添付するために使用します。 最初のパスのメモのためのすべての変数を設定できますが、情報カテゴリとメモ テキスト フィールドのみに入力する必要があります。 実際には、これは通常、システムで生成されたメモをテーブルに添付したり、Dataverse に保存されているファイルをテーブルに添付したりする場合に使用します。 さらに、ユーザーにメモを作成するための独自の UI を提供する場合、これは、そのメモを Dataverse の所有者テーブルに添付する方法です。 この例では、前の例に続き、新しく作成された取引先企業に対してメモを作成します。

ServiceClient クラスを使用する場合、CRUDExtentions 名前空間で CreateAnnotation のメソッドを見つけることができます。

CrmServiceClient svc = new CrmServiceClient(connectionstring);  
// ServiceClient svc = new ServiceClient("connectionstring");

// Verify that you are connected.  
if (svc != null && svc.IsReady)  
{  
    // Create and attach a note.  
    inData.Clear();   
    inData.Add("subject", new CrmDataTypeWrapper("This is a NOTE from the API" , CrmFieldType.String));
    inData.Add("notetext", new CrmDataTypeWrapper("This is text that will go in the body of the note" , CrmFieldType.String));  
    Guid noteID = svc.CreateAnnotation("account", accountId, inData);  
}  
else  
{  
    // Display the last error.  
    Console.WriteLine("An error occurred: {0}", svc.LastCrmError);  
  
    // Display the last exception message if any.  
    Console.WriteLine(svc.LastCrmException.Message);  
    Console.WriteLine(svc.LastCrmException.Source);  
    Console.WriteLine(svc.LastCrmException.StackTrace);  
  
    return;  
}  

参照

XRM ツール API を使用して Dataverse でアクションを実行

注意

ドキュメントの言語設定についてお聞かせください。 簡単な調査を行います。 (この調査は英語です)

この調査には約 7 分かかります。 個人データは収集されません (プライバシー ステートメント)。