Тема
:
Регистрация PlugIn
Показать сообщение отдельно
12.05.2009, 17:47
#
31
Elka
Участник
431
/
22
(
1
)
Регистрация: 02.12.2008
Адрес: г. Ростов-на-Дону
Цитата:
Сообщение от
a33ik
Каст - немного другое. Код плагина выкладывайте - плдскажу, где проблема.
Спасибо Вам большое
!!
Вот код:
using
System;
using
System.Collections.Generic;
using
Microsoft.Win32;
using
Microsoft.Crm.Sdk.Query;
// Microsoft Dynamics CRM namespaces
using
Microsoft.Crm.Sdk;
using
Microsoft.Crm.SdkTypeProxy;
using
Microsoft.Crm.SdkTypeProxy.Metadata;
using
System.Text;
namespace
Crm.Plugins
{
public
class
MyPlugin
:
IPlugin
{
private
string
_secureInformation;
private
string
_unsecureInformation;
public
MyPlugin(
string
unsecureInfo,
string
secureInfo)
{
_secureInformation = secureInfo;
_unsecureInformation = unsecureInfo;
}
public
void
Execute(
IPluginExecutionContext
context)
{
DynamicEntity
entity =
null
;
if
(context.InputParameters.Properties.Contains(
ParameterName
.Target) && context.InputParameters.Properties[
ParameterName
.Target]
is
DynamicEntity
)
{
entity = (
DynamicEntity
)context.InputParameters.Properties[
ParameterName
.Target];
}
else
{
return
;
}
try
{
ICrmService
crmService = context.CreateCrmService(
true
);
decimal
sum = ((
CrmMoney
)entity.Properties[
"new_esum"
]).Value;
String
new_productname =
""
;
if
(entity.Properties.Contains(
"productid"
))
{
ColumnSet
cs =
new
ColumnSet
();
Lookup
regarding = (
Lookup
)entity.Properties[
"productid"
];
cs.Attributes.Add(
"name"
);
product
_product = (
product
)crmService.Retrieve(
EntityName
.product.ToString(), regarding.Value, cs);
if
(_product ==
null
|| _product.name ==
null
)
{
return
;
}
else
{
new_productname = _product.name;
}
}
QueryByAttribute
query =
new
QueryByAttribute
();
query.ColumnSet =
new
AllColumns
();
query.EntityName =
EntityName
.productpricelevel.ToString();
query.Attributes =
new
string
[] {
"productidname"
};
query.Values =
new
string
[] { new_productname };
BusinessEntityCollection
retrieved = crmService.RetrieveMultiple(query);
foreach
(
DynamicEntity
product
in
retrieved.BusinessEntities)
{
product[
"amount"
] =
new
CrmDecimal
(sum);
crmService.Update(product);
}
}
catch
(System.Web.Services.Protocols.
SoapException
ex)
{
throw
new
InvalidPluginExecutionException
(
String
.Format(
"An error occurred in the {0} plug-in."
,
this
.GetType().ToString()), ex);
}
}
}
}
Elka
Посмотреть профиль
Отправить личное сообщение для Elka
Найти ещё сообщения от Elka