通过Dynamics CRM SDK导入帐户和联系人Zip文件

时间:2016-04-19 22:55:10

标签: c# dynamics-crm dynamics-crm-2015

我需要自动化Dynamics CRM导入向导,该向导目前允许您将帐户和联系人文件压缩在一起,并按照下面的屏幕截图一次性导入到CRM中。

enter image description here

我们要导入相当多的zip文件,因此认为使用Dynamics CRM SDK自动执行此操作可能是明智之举。在SDK中查看我可以找到一个逐个导入实体文件的示例,例如here,但没有将它们一起导入zip文件的示例?这是可能的,如果是这样的话有什么例子吗?例如,下面的SDK代码会查看"导入Accounts.csv"仅限文件,但我真的需要一些东西来处理"导入帐户和Contacts.zip"。

// Create Import File.
ImportFile importFile = new ImportFile()
{
    Content = BulkImportHelper.ReadCsvFile("Import Accounts.csv"), // Read contents from disk.
    Name = "Account record import",
    IsFirstRowHeader = true,
    ImportMapId = new EntityReference(ImportMap.EntityLogicalName, importMapId),
    UseSystemMap = false,
    Source = "Import Accounts.csv",
    SourceEntityName = "Account_1",
    TargetEntityName = Account.EntityLogicalName,
    ImportId = new EntityReference(Import.EntityLogicalName, importId),
    EnableDuplicateDetection = false,
    FieldDelimiterCode =
        new OptionSetValue((int)ImportFileFieldDelimiterCode.Comma),
    DataDelimiterCode =
        new OptionSetValue((int)ImportFileDataDelimiterCode.DoubleQuote),
    ProcessCode =
        new OptionSetValue((int)ImportFileProcessCode.Process)
};

1 个答案:

答案 0 :(得分:0)

根据this enum,可用于编程导入的唯一选项是xml和csv。让您的代码打开每个zip并单独提交每个文件。

根据您的评论进行更新: 忽略枚举。我正在寻找导入相关内容的SDK,并认为枚举是相关的。深入研究,metadatabrowser告诉我importfile实体的filtetypecode选项集只有以下选项:CSV,XML Spreadsheet 2003,Attachment和XLSX。因此,我猜测zip文件的处理是在对话框中进行的,而不是平台。换句话说,我认为你是对的,拉链的程序化导入看起来并不好。