Показать сообщение отдельно
Старый 16.03.2010, 11:32   #5  
Гуревич Денис is offline
Гуревич Денис
Участник
Лучший по профессии 2009
 
228 / 67 (3) ++++
Регистрация: 04.08.2008
Адрес: Москва
Krom, хорошо, что вы сразу предупредили, что пишете плагин впервые. Ваш код только это и оправдывает.
Разберем:
Код:
            XmlDocument xmlConfig = new XmlDocument();
            xmlConfig.Load(@"C:\WIN2003\system32\inetsrv\PluginsConfig.xml");
            XmlNode rootConfig = xmlConfig.FirstChild;
Какую-либо конфигурацию плагина лучше хранить в Unsecure или Secure Configuration, которая указывается при регистрации step'а плагина и при выполнении передается параметром в конструктор плагина.
Но в данном случае вам конфиг не нужен вообще, поскольку вы пытаетесь извлечь оттуда имя сервера и имя организации для создании CrmService, тогда так в плагине CrmService нужно создавать из контекста, на что уже справедливо обратил внимание ZooY.

Затем:
Код:
            Lookup lookupPrice = new Lookup();
            lookupPrice.Value = ((SDK::Lookup)currentPrice.Properties["pricelevelid"]).Value
При создании лукапов надо еще указывать type.

И вот:
Код:
bePriceUpdate.amount.Value = price;
Это, конечно, ошибка, т.к. таким простым способом можно присваивать значения только атрибутам с типом string.
В данном случае надо было сначала написать:
Код:
bePriceUpdate.amount = new CrmMoney();
И зачем нужна мешанина из нэймспейсов, я вообще не понял.