суббота, 3 сентября 2011 г.

Работа с 1С 8.х из .Net приложений при помощи dynamic типов

В реалиях нашего рынка превалирующей по количеству внедрений учётной системой является 1C и рано или поздно люди, которые занимаются внедрением CRM систем сталкиваются с задачами интеграции/синхронизации данных между CRM и учётных систем (в частном случае 1C). Вот и передо мной эта задача тоже встала.

1С начиная с версии 8.0 предоставляет более-менее адекватный механизм работы с данными и метаданными системы - COM объект.

В качестве примера кода поставлю задачу создания в 1С контрагента и получения его кода.

вторник, 2 августа 2011 г.

суббота, 9 июля 2011 г.

Development - Offtopic

Есть замечательный анекдот про лесорубов и бензопилу.

Прислали лесорубам бензопилу чтобы валить лес. Все стоят вокруг - смотрят. Положили доску:
-Р-р-р-р-р, - сказала бензопила.
-У-у-у-у, блин, - сказали лесорубы.
Положили бревно:
-Р-р-р-р-р, - сказала бензопила.
-У-у-у-у, блин, - сказали лесорубы.
Положили бетонный столб:
-Р-р-р-р-р, кха-кха-бздык, - сказала бензопила.
-Ага, блин, - сказали лесорубы и пошли валить лес двуручными пилами.

Так вот к чему я. Решили использовать коллеги в проекте Entity Framework, а потом Linq2SQL - я был отрицательно к этому настроен, потому что ничего не может быть надёжнее чем прямых запросов к базе. Первый и второй оказались проблемными в использовании, порождали проблемы в использовании и занимали кучу времени на отладку. Я не спорю, что виной тому кривые руки. Но если проект срочный и критично время его завершения то лучше использовать проверенную двуручную пилу, чем учиться как использовать бензопилу.

среда, 19 января 2011 г.

CRM 4.0 - присвоение инцидента очереди

У меня была задача в соответствии с которой мне необходимо было присвоить инцидент в произвольную очередь. В MSDN есть замечательный пример. Но этот пример не работал в ситуации когда инцидент принадлежал не в очереди "In Progress" пользователя. Код далее работает универсально.