powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Обработка внешнего события.
3 сообщений из 3, страница 1 из 1
Обработка внешнего события.
    #39991958
Valery_61
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго дня. Кто может подсказать в таком вопросе. Есть устройство "прайс чекер". С 1с это работает так, загружаем внешнюю компоненту и обрабатываем поступившие внешние события.


При начале работы создаем объект:
Процедура ЗагрузитьВнешнююКомпонентуПрайсЧекер() Экспорт
Попытка
ЗагрузитьВнешнююКомпоненту("PriceDrv.dll");
Исключение
Сообщить("Внешняя компонента PriceDrv.dll не найдена");
Возврат;
КонецПопытки;

глПрайсЧекер = Новый ("Addin.PriceChecker");
Сообщить("Внешняя компонента PriceChecker загружена");
глПрайсЧекер.ОткрытьСервер();
КонецПроцедуры


В момент когда кто то сканирует штрихкод:
Процедура ОбработкаВнешнегоСобытия(Источник,Событие,Данные);
// Посылка ответа
Товар = "Како либо товар найденный по штрихкоду";
Цена = " Цена - " + Формат(100,"ЧДЦ=2")+" руб.";
глПрайсЧекер.IDКлиента = Событие;
Если глПрайсЧекер.GetSenderParams() = 0 Тогда
глПрайсЧекер.Строка1 = Товар;
глПрайсЧекер.Строка2 = Цена;
Иначе
Сообщить("GetSenderParams: " + глПрайсЧекер.ResultCode + ", " + глПрайсЧекер.ResultCodeDescription);
КонецЕсли;
КонецПроцедуры


На Фоксе
goPriceCheck = CreateObject("Addin.PriceChecker")
goPriceCheck.OpenServer()
А вот как получить событие не представляю.



Здесь файлы к устройству https://yadi.sk/d/SNPXo3I962hEDg
...
Рейтинг: 0 / 0
Обработка внешнего события.
    #39992033
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valery_61,
вопрос номер раз - а почему решили, что эту внешнюю компоненту для 1с можно вот так использовать вне 1с?
...
Рейтинг: 0 / 0
Обработка внешнего события.
    #39992148
Valery_61
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос решен все работает.
Примерно так
В главном модуле
oEvents = CreateObject('myclass')
EVENTHANDLER(goPriceCheck,oEvents)

Создал класс для обработки событий
DEFINE CLASS myclass AS session OLEPUBLIC
IMPLEMENTS IPriceCheckerEvents IN "c:\Program Files (x86)\Штрих-М\Драйверы\Драйвер PriceChecker\PRICEDRV.DLL"
PROCEDURE IPriceCheckerEvents_DataEvent(Data AS STRING, SenderID AS Number) AS VOID
goPriceCheck.SenderID = SenderID
IF goPriceCheck.GetSenderParams() = 0 THEN
*Далее понятно что товар и цену ищем в базе
goPriceCheck.Line1 = "Товар"
goPriceCheck.Line2 = "Цена"
goPriceCheck.SendAnswer()
ENDIF
ENDPROC
PROCEDURE IPriceCheckerEvents_LogEvent(Data AS STRING) AS VOID
* add user code here
ENDPROC
ENDDEFINE

Всем спасибо.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Обработка внешнего события.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]