Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0
Доброго времени суток! Делаю процедуру выгрузки данных на весы в регламентном задании, не получается подключиться к торговому оборудованию, а точнее подключить внешнюю компоненту ДЛЛ. Кто ни будь сталкивался с работой торгового оборудования в регламентном задании?
При подключении ДЛЛ в реглам. задании, по какому пути ищет?
Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0
logist @ Сегодня, 18:48 , Конфа ДАЛИОН ТРЕНД База серверная.
ДЛЛ подключается если руками делать выгрузку,через форму, клиентский модуль вызывается и подключается без проблем. Админ говорит что пользователь имеет права доступа
а вот в регламентном задании, подключение из клиентского модуля перенесено в серверный. И вот в этом серверном модуле при ПодключитьВнешнююКомпоненту возвращается ЛОЖЬ.
Сбросили эту ДЛЛ в SysWoW64 и зарегистрировали ее. все равно результат = ЛОЖЬ...
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0
Цитата(kosalex @ 21.02.16, 21:26)
И вот в этом серверном модуле при ПодключитьВнешнююКомпоненту возвращается ЛОЖЬ.
Значит библиотека умеет работать только в интерактивном режиме. Думаю это вполне нормально, т.к. процесс передачи информации между весами, всё таки должен обеспечивать человек, разработчикам dll может в голову не приходило, что какое-то ПО будет автоматически что-то делать с весами, поэтому они использовали только интерактивные директивы.
Личные бесплатные консультации не даю, для этого есть форум!
Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0
logist @ Сегодня, 20:43 , Я пытаюсь запускать еще один сеанс в процедуре регламентного задания, с открытием обработки которая в свою очередь уже произведет подключение ДЛЛ и дальнейшую работу. Но вот беда...не получается запустить этот сеанс....
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0
Цитата(kosalex @ 21.02.16, 23:00)
Я пытаюсь запускать еще один сеанс в процедуре регламентного задания
Он никогда не запустится. Серверная часть не может запускать интерактивные действия.
Ваш случай реализуется планировщиком заданий в windows, но для этого на сервере должен постоянно висеть активный сеанс, в котором из планировщика ОС будет запускаться интерактивный сеанс 1С, выполнять вашу процедуру, и завешаться. Признак выполнения процедуры можно передать в командной строке, и в ПриНалачеРаботы его поймать, выполнить что надо, и завершиться. Только так.
Личные бесплатные консультации не даю, для этого есть форум!
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0
Цитата
Код для обычного приложения. Теоретически полностью аналогично будет работать и в управляемом.
Текст хороший, но я так и не понял, как это Теоретически работает. У меня на практике, в управляемом приложении, не получилось в серверном варианте запустить клиентскую часть. И еще, я из текста так и не понял, как это сработает даже в обычному приложении. Разве что это рассчитано на то, что на компе постоянно запущен сеанс пользователя, под которым и работает(запускается) сам сервер 1С, тогда да, это будет работать.
p.s. вы там кстати, комменты почитайте, там же обсуждают, что com-компоненты на сервере не работают.
Личные бесплатные консультации не даю, для этого есть форум!
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1427 раз
Рейтинг: 0
Недавно пришлось писать подключение к SAP с сервера (регл. заданиями тянуть данные) Следующий код успешно отработал:
Скрипт = Новый COMОбъект("MSScriptControl.ScriptControl"); Скрипт.languadge = "vbscript"; Текст = " |Function GetData() |Dim R3 |Set R3 = CreateObject(""SAP.Functions"")"; // и тут далее идет код получения данных с SAP на vbs
Скрипт.AddCode(Текст);
ТаблицаДанных = Скрипт.Run("GetData");
Условия работы: 1. На СЕРВЕРЕ корректно установлена компонента для стыковки с SAP. Для проверки нужно зайти в сессию под пользователем от имени которого запускается сервер 1С и проверить что б интерактивно всё работало 2. Пришлось немного поиграться с MSScriptControl, т.к. не сразу взлетел ([необходимо зарегистрироваться для просмотра ссылки] )
З.Ы. информация просто из опыта того как я запустил ком на сервере))
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1427 раз
Рейтинг: 0
Честно ))) даже не пробовал. Был код на VBS который нужно было вызывать для получения данных. В сам код не вникал, писали люди со стороны SAP и дали мне.
Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0
Сделал так, обработка1 - в ней код по выгрузке и подключению ДЛЛ. в регламентном задании процедура которая запустит сеанс и откроет обработка1, после выполнения кода в обработка1 сеанс закроется.
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!