По теме из базы знаний
- 1C Messenger для отправки сообщений, файлов и обмена данными между пользователями 1С, вэб страницы, мобильными приложениями а ля Skype, WhatsApp
- 1с vs. МТС Мобильные сотрудники (SOAP запросы в 1С 8.2)
- Сканер штрих-кодов Сервер + Клиент
- Обзор полезных методов БСП 3.1.4
- Мобильное приложение 1С: использовать или нет? - выбор за тобой!
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(9)Телефон и сервер в одной сити.
Это не может быть как то связано с этим? Когда я пишу
возникает ошибка (скрин)
Что бы ошибки не было, я пишу
Тогда прекрасно всё запускается, смотрю отладку через телефон, ComОбъект создается, далее вызываю метод
, данные метод возвращает мне сообщение -5000, что означает "Терминал не обнаружен", запускаю эту же обработку через комп, этот же метод возвращает мне результат взвешивания весов
Это не может быть как то связано с этим? Когда я пишу
Терминал = Новый COMОбъект("Controller.ScAuto");
Что бы ошибки не было, я пишу
#Если НЕ МобильноеПриложениеСервер Тогда
Терминал = Новый COMОбъект("Controller.ScAuto");
Тогда прекрасно всё запускается, смотрю отладку через телефон, ComОбъект создается, далее вызываю метод
Терминал.GetWeight(1, 5)
Прикрепленные файлы:
(10) На мобильном приложении и в мобильном клиенте не существует COM объектов. Это приблуда виндовозная, Андроид таких слов не знает.
Но конечно же можно запустить процедуру на сервере и она сможет создать com-объект. Если на сервере не создает, а под клиентом создает, копай права пользователя под которым крутится сервер 1С.
Но проверка проверяет именно мобильное приложение. мобильное приложение не может ничего запустить на сервере 1С, оно работает автономно. Надо все-таки определиться мобильный клиент или мобильное приложение? Мобильное приложение работает со своей БД. Мобильный клиент с внешним сервером 1С. И на клиенте можно запускать процедуры, которые будут крутиться именно на сервере (достаточно указать директиву &НаСервере). И если сервер 1С под windows, то com объекты должны отрабатывать.
Но конечно же можно запустить процедуру на сервере и она сможет создать com-объект. Если на сервере не создает, а под клиентом создает, копай права пользователя под которым крутится сервер 1С.
Но проверка
#Если НЕ МобильноеПриложениеСервер
(12) Ага. Судя по всему в мобильном клиенте все-таки на стороне сервиса запускается, поскольку com-объект создан. А посмотри еще разок, на какой стороне в тонком клиенте запускается процедур. Есть там &НаСервере? Если есть еще один эксперимент попробуй. Запусти 1С сервер под админом. Изменит это ситуацию?
(12) наверное потому что не понимаешь как работает код.
Вам уже объяснили, что ком должен быть только на сервере.
Далее если вы вызвали сервер, передали управление на клиент, то вам нужно результат хранить на сервере, без хранения он сразу падает и нужна повторная инициализация.
Это основа клиент-серверной работы!
Вам уже объяснили, что ком должен быть только на сервере.
Далее если вы вызвали сервер, передали управление на клиент, то вам нужно результат хранить на сервере, без хранения он сразу падает и нужна повторная инициализация.
Это основа клиент-серверной работы!
(14)
вызвали сервер, передали управление на клиент, то вам нужно результат хранить на сервере, без хранения он сразу падает и нужна повторная инициализация.
. У меня ком на сервере, на клиент я возвращаю только результат, ComОбъект я создаю в общем модуле с включенным повторным использованием возвращаемых значений на время сеанса. Всё происходит исключительно на сервере.
(15) результат в каком виде? На скринах что показали такое будет падать.
Не уверен что ком в такой концепции работоспособен.
Я когда работать с ЭСЧФ там ком сохраняли во временное хранилище и жил он примерно 20 минут.
Почитайте про это в учебниках, думаю сможете решить проблему тогда.
Не уверен что ком в такой концепции работоспособен.
Я когда работать с ЭСЧФ там ком сохраняли во временное хранилище и жил он примерно 20 минут.
Почитайте про это в учебниках, думаю сможете решить проблему тогда.
(16)
е уверен что ком в такой концепции работоспособен
Функция СтруктураОтвета() Экспорт
Структура = Новый Структура();
Структура.Вставить("Вес", 0);
Структура.Вставить("ПризнакСтабильности", Ложь);
Структура.Вставить("НовоеВзвешивание", Истина);
Структура.Вставить("НомерВзвешивания", 0);
Структура.Вставить("Ошибка", Истина);
Возврат Структура;
КонецФункции
Показать
Ваще неверный подход.
1. На мобильном устройстве даже с ВИН ЦЕ этот СОМ-объект не создастся, т.к. он зарегистрирован на компе, к которому физически подключены весы и установлен контроллер (или как там это ПО называется).
2. Для того, чтобы получить вес, нужно создать СОМ-объект на компе, к которому подоткнуты весы.
3. Чтобы передать вес в мобильный клиент, из него в принципе можно попробовать вызвать процедуру на сервере, но лично я не в курсе, в каком контексте эта процедура будет вызываться. Если на компе, к которому подключены весы - это должно сработать, а если база клиент-серверная, то компьютер, на котором работает сервер приложений, может быть совсем другим компьютером.
4. Лично я делал мобильное приложение и по веб-сервису обращался к основной базе, а она уже к весам.
5. Данный СОМ-объект достаточно долго создается, поэтому лучше на компе с весами запустить какой-нить софт, который бы постоянно писал вес и признак отсечки (когда весы устаканятся) в какой-нить MQ TT, откуда уже мобильный клиент или приложение забирало бы данные. Эту фигню на повершелле можно написать за 10 минут - и будет счастье. Ну или не на MQ TT, а просто в файл, откуда пусть и читает моб.клиент или кто там хочет.
1. На мобильном устройстве даже с ВИН ЦЕ этот СОМ-объект не создастся, т.к. он зарегистрирован на компе, к которому физически подключены весы и установлен контроллер (или как там это ПО называется).
2. Для того, чтобы получить вес, нужно создать СОМ-объект на компе, к которому подоткнуты весы.
3. Чтобы передать вес в мобильный клиент, из него в принципе можно попробовать вызвать процедуру на сервере, но лично я не в курсе, в каком контексте эта процедура будет вызываться. Если на компе, к которому подключены весы - это должно сработать, а если база клиент-серверная, то компьютер, на котором работает сервер приложений, может быть совсем другим компьютером.
4. Лично я делал мобильное приложение и по веб-сервису обращался к основной базе, а она уже к весам.
5. Данный СОМ-объект достаточно долго создается, поэтому лучше на компе с весами запустить какой-нить софт, который бы постоянно писал вес и признак отсечки (когда весы устаканятся) в какой-нить MQ TT, откуда уже мобильный клиент или приложение забирало бы данные. Эту фигню на повершелле можно написать за 10 минут - и будет счастье. Ну или не на MQ TT, а просто в файл, откуда пусть и читает моб.клиент или кто там хочет.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот