我在Dynamic CRM 2011中创建了一个用于发送短信的解决方案。
在我的解决方案中我有2个实体,第一个用于发送短信,第二个用于保存发送结果。
我为第二个实体创建插件,插件连接到Web服务并检查发送和更新实体的结果,因此更新发送雕像的步骤应如下所示:
1-用户选择一个或多个实体,然后按功能区中的自定义按钮
2- CRM运行我的插件并连接到Web服务并更新结果字段
所以我创建插件并创建按钮但我不知道如何在按下按钮时运行插件(C#代码)。
如果有人知道这个或有更新SMS结果的更好解决方案,请告诉我。
注意:我为插件注册了更新步骤和预映像。
请帮帮我。
答案 0 :(得分:1)
选项1(无javascript或自定义按钮):
在Check Send Status
实体上创建一个SMS
复选框。将您的插件从Send result
实体移动到Update
实体的SMS
,并在Check Send Status
设置为true时触发它。该插件现在可以检查SMS
的发送状态,并使用适当的结果创建Send result
实体。
然后,您的用户可以使用多重编辑按钮。他们可以突出显示多个SMS
条记录,点击修改,然后将Check Send Status
设置为true,这将触发您的插件。
选项2(自定义javascript):
为您的按钮编写一个使用SelectedControlSelectedItemIds
参数的javascript方法。有关详细信息,请参阅此处:http://social.microsoft.com/Forums/en-US/79f959ac-0846-472f-bff1-4f5afe692a56/getting-selected-records-guids-in-crm-2011?forum=crm
您的javascript方法需要遍历这些ID,然后创建Send result
记录,该记录应触发您现有的插件(假设它在Create
上)。
答案 1 :(得分:0)
你不能直接从功能区按钮调用插件(间接你可以更新触发插件的记录)
上面的javascript选项是很棒的选项,但是如果你想在托管代码中工作:
另一个选项可能是将功能区按钮连接到工作流程,以调用自定义工作流程活动,该活动预先形成您需要执行的任何逻辑。这将阻止您必须触发插件,而只是调用按需工作流。
如果您需要任何帮助,请告诉我。