Вызов функции 1С 8.2 из MS SQL SERVER #574257


#0 by Рыбка Халла
Здравствуйте. Возникла неоднозначная задача на стыке нескольких технологий. Проект по синхронизации 1С 8.2 CRM и системы документоооборота Directum 4.7. Выполнены этапы по обращению систем напрямую друг к другу через com(1C -> directum) Стоит и обратная задача: Задачи в электронном документообороте должны realtime фиксироваться,как документы 1С с определёнными реквизитами. В документообороте отсутствует старт задачи как событие. Принято решение фиксировать в БД изменения таблицы SBTask и вызывать через com обращение к 1С на создание документа с нужными реквизитами. Триггер на изменение не вопрос - остаётся 2 пункта - обращение средствами MS SQL Server к 1С 8.2 через com и создание документа. Тестовая база развёрнута на MS SQL 2008r2. Если есть возможность привести какой-то пример вызова - просьба помочь.
#1 by Господин ПЖ
в чем проблема то...
#2 by H A D G E H O G s
1. Зовите 1С по COM из самого Директума. 2. Обработкой ожидания из 1С смотрите какой-нибудь служебный регистр сведений, если в нем запись появилась - выполняйте.
#3 by МихаилМ
в доках к ms sql есть пример работы с ole c excel и еще с каким-то по
#4 by МихаилМ
+ но логичней написать .NET сборку для мс скл
#5 by Рыбка Халла
Господин ПЖ Спасибо, XP_Cmdshell при работе Директума активна - соответственно это мысль H A D G E H O G s Нет событий для привязки вызова в realtime, старт есть только по типовому маршруту, тогда в каждом из них во всех проектах надо будет писать вызов - требуется универсальное решение, так как задача может быть отправлена и по свободному. Постоянно(1 раз в мин) сканировать задачи, которых могут быть тысячи или десятки тысяч - большая нагрузка будет = это конечно почти реалтайм, но дорогой ценой, а так да, это вариант, выгрузил новые из директума в xml или txt, залил в 1С и норм. МихаилМ. До этого этапа вчера дошли только, до этого с MS SQL  только при установке Directum общался, интернет вчера завалил меня обилием разношёрстной информации по этому вопросу, видимо будем пробовать cmdshell и учить документацию SQL Server. Спасибо огромное всем. Миста - прекрасный форум.
#6 by Defender aka LINN
Делал такое на прошлой работе. Жуткая штука :)
#7 by Рыбка Халла
можно наверное из командной строки запустить 1С с вызовом внешней обработки и передать параметры
#8 by МихаилМ
тогда риалтайм по сомнением проще робота в 1с держать или регламентное задание.
#9 by Рыбка Халла
Пока "дотестиваем" предыдущие шаги(и думаем о текущих) Но вопрос - почему под сомнением? SQL же при изменении должен вызывать обработку с параметрами, которая заполнит и сохранит документ. Соответственно изменённые данные без "нагрузки на SQL через запросы от Directum" должны попасть в 1С напрямую из SQL? О регламентных заданиях начальство слышать не хочет, т.к. постоянно придётся вызывать сценарий, который будет пробегать все задачи.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С