【问题标题】:Populating a lookup field in MS dynamics在 MS 动力学中填充查找字段
【发布时间】:2013-03-26 22:00:16
【问题描述】:

这是this one 的后续问题。我正在尝试通过 Freeform 将 Web 表单数据发送到 MS Dynamics 2011。我们构建了一个扩展来将数据发送到 MS Dynamics,它的构建方式是我们可以根据需要添加其他字段收集这些数据。

感谢该线程中的几个耐心的人,以及我的一些更多研究,我现在已经通过我的头骨了解到查找值没有数值,而是唯一的 ID (GUID)。我什至想出了如何识别查找值的 GUID。但是,当我使用 GUID 构建一个数组以将字段数据映射到 MS Dynamics 时,它并没有填充。

以下是部分代码:

$configData['fieldMapping'] = array(
    'first_name' => array('name' => 'firstname', 'value' => null),
    'last_name'  => array('name' => 'lastname', 'value' => null),
    'email' => array('name' => 'emailaddress1', 'value' => null),
    'email_address' => array('name' => 'emailaddress1', 'value' => null),
    'phone' => array('name' => 'telephone2', 'value' => null),
    'credit_history' => array(
        'name' => 'new_selfreportedcredithistory', 
        'value' => array(
            'excellent' => 100000000,
            'Good'          => 100000001,
            'Fair'          => 100000002,
            'Poor'          => 100000003,
            'Bad'           => 100000005,
        )
    ),
    'campaign_name' => array(
        'name' => 'campaignid', 
        'value' => array(
            'USDA' => 'B53EA05A-2C29-E211-8C3A-78E3B5101ED7',
            'Radio Ads'             => '8F254BB4-5575-E211-8AAB-78E3B510ED7',
            'Postcards'             => '4F8E216D-9C1D-E211-8DA=-78E3B508542D',
        )
    ),
    'how_referred' => array('name' => 'leadsourcecode', 'value' => null)
);

我在 GUID 周围加上引号,因为当我将它们不在引号中时,我收到了来自 Dreamweaver 的 PHP 语法错误警告。但是,当我测试我的一个表单并在表单中传回其中一个文本值(左列)时,它的 GUID 在此处被标识,该字段仍然没有映射。 credit_history 字段映射得很好 - 但这将进入选项集字段,而不是查找字段。我刚刚复制了选项集字段映射,因为它看起来可能会起作用:它正在构建一个数组以将我们的表单可能发送的内容“转换”为 MS Dynamics 可以识别该字段的值,从而知道如何填充数据.

有没有人知道为什么这可能不起作用?或者,我的问题是否有点含糊不清? (我知道我没有给你扩展的完整代码——虽然我们计划再次雇用这个小组来对扩展进行不同的更改,虽然我们可以要求他们映射这些字段......我'如果可以的话,我希望自己能够弄清楚。)

【问题讨论】:

    标签: mapping dynamics-crm-2011 guid lookup


    【解决方案1】:

    我对您在做什么或它如何工作一无所知,但在 CRM SDK 本身中,查找字段实际上是 EntityReference 类型,其中包含 GUID 和查找的实体逻辑名称实体类型。因此,无论您的流程是什么翻译您的数据,它都需要接受实体逻辑名称(全部小写)。在你的情况下看起来像campaign...

    【讨论】:

    • 我没有使用 SDK。我正在编辑一个 PHP 文件,它是一个 ExpressionEngine CRM 集成映射配置列表,显示我们的哪些表单字段进入了哪个 CRM 表单(并且,在选项集的情况下,哪个选项等于哪个数值。)听起来好像有但是,必须添加一些其他格式或信息才能使此映射起作用。我会试一试,看看有没有什么事情发生。
    • @Leigh,ExpressionEngine CRM 集成映射必须以某种方式与 CRM SDK 交互。也许它会自动为您填充实体逻辑名称(但我对此表示怀疑)或者(更有可能)为您提供填充 EntityLogicalName 的方法,而您不是。
    • 也可能是我在映射文档中设置了错误。我承认,我完全在这里猜测。我只是在 Dreamweaver 中编辑文件,将它们上传到该扩展的其余部分所在的开发服务器,并测试是否可以填充此表单字段。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-05
    • 2016-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多