Я пытаюсь вставить/обновить записи контактов в CRM 2011 (по принципу RO15), используя веб-службы CRM. Я использую пакет SSIS для получения данных из моего источника и использования С# (компонента скрипта), вставляющего их в CRM.
Первоначально я использовал одну строку за раз, используя метод ContactInput_ProcessInputRow (ContactInputBuffer Row). Это будет вставлять одну строку за раз, и после прочтения этого сообщения я изменил его на массовый импорт, используя метод ContactInput_ProcessInput (ContactInputBuffer Buffer).
Похоже, что проблема сначала возникает, когда начинается вставка строк. Но после примерно 1500 строк я получаю ошибку тайм-аута. Обычно я изменяю настройки тайм-аута на стороне клиента в файле конфигурации, но поскольку это выполняется через компонент сценария, я не вижу конфигурационный файл. У меня также увеличен лимит времени ожидания на стороне сервера до 24 часов.
Код С#, который я использую, такой же, как и объемный код вставки из сообщения (связанного) выше. Я изменил размер буфера на 10, поскольку это то, что Scribe использует и хорошо работает с установленной нами CRM-установкой 2011 года.
Как исправить эту проблему с таймаутом? Я ожидаю иметь около 5 тыс. Записей за интеграцию.
Спасибо за ответы. Я думаю, что исправил эту проблему, добавив следующий блок кода в файл app.config (в компоненте скрипта).
<system.web>
<httpRuntime executionTimeout="12000"/>
</system.web>
<system.serviceModel>
<bindings>
<netTcpBinding>
<binding name="longTimeoutBinding"
receiveTimeout="02:00:00" sendTimeout="02:00:00" closeTimeout="02:00:00" openTimeout="02:00:00">
<security mode="None"/>
</binding>
</netTcpBinding>
</bindings>
<services>
<service name="longTimeoutService"
behaviorConfiguration="longTimeoutBehavior">
<endpoint address="net.tcp://localhost/longtimeout/"
binding="netTcpBinding" bindingConfiguration="longTimeoutBinding" />
</service>
</services>
</system.serviceModel>
Я провел несколько тестов, и мне удалось вставить/обновить около 7 тыс. Записей без ошибок. Надеюсь, это поможет любой потерянной душе, как я!