jBASE Web Builder -
Интеграция c Visual Basic
ВВЕДЕНИЕ
jBase для web-разработчиков является полнофункциональной средой
для создания интерактивных транзакционных web-приложений. Использование
мощностей Microsoft Visual Basic может расширить эту функциональность.
Такая интеграция Microsoft Visual Basic дает возможность для
web-разработчиков использовать в jBASE весь спектр компонентов
ActiveX / COM.
Данная публикация поясняет принципы, лежащие в основе такой интеграции.
Здесь включены инструкции о том, как с самого начала построить
проект jWB и проект VB, способные работать совместно.
Примеры проектов, описанные в этой публикации, требуют jWB версии
3.2.1 или выше, а также Microsoft Visual Basic 6. Эти продукты
должны быть установлены на одной и той же машине. Если они находятся
на разных машинах, то IP-адрес в примерах нужно изменить с 127.0.0.1
на IP-адрес машины, предоставляющей услуги VB server.
ОБЗОР
jBASE для web-разработчиков версий 3.2.1 и выше поступает со встроенным
интерфейсом "socket calling interface", обеспечивающим
связь через TCP/IP. Написанием вызовов функций с использованием
этого интерфейса jWB можно легко интегрировать с другими приложениями
или языками программирования.
Каждый диалог должен быть порожден со стороны jWB. Хотя диаграмма
показывает jWB server и VB server как отдельные машины, эти службы
могут сосуществовать на одной машине.
СОЗДАНИЕ ПРОЕКТА WEB BUILDER
Приложение web builder будет состоять из простой страницы, содержащей
кнопку и метку. Кнопка будет инициировать обращение через сокет
(socket call) к службе Visual Basic server, а метка быдет показывать
сообщение, получаемое от Visual Basic server.
Стартуйте jWB и добавьте новый модуль Application Module. Дайте
ему имя "socket". Добавьте в модуль новую страницу.
Назовите страницу "pagSocket".
Добавьте на страницу кнопку и метку. Измените свойства для кнопки
следующим образом:
Caption Send Socket Message
Button Type Submit
Trigger Type sub
Trigger Option sendsocketmsg
Измените свойства метки следующим образом:
Text [{{variable||sysdata||1}}]
Страница будет выглядеть примерно так:
Щелкните на кнопке Send Socket Message, а затем щелкните на овальной
кнопке после параметра "trigger option parameter" для
открытия процедуры sendsocketmsg.
Для процедуры вставьте следующее содержимое:
SUB sendsocketmsg(html)
*--- включение блока
INCLUDE sysbp syscommon
*--- Строим список параметров для вызова syssocket call
syssock<syssockhost> = "127.0.0.1"
syssock<syssockport> = 8000
syssock<syssockout> = "Message to VB"
syssock<syssocktimeout> = 10
*--- Делаем вызов socket call
CALL syssocket
*--- Получаем возвращенное значение (или ошибку)
IF syserr <> 0 THEN
sysdata<1> = syssock<syssockerrmsg>
END ELSE
sysdata<1> = syssock<syssockin>
END
*--- Перестраиваем страницу jWB
CALL syscreate(syspage,html)
RETURN
Эта процедура перед вызовом функции socket строит список параметров.
Когда функция socket function выполняет возврат, она загружает
sysdata<1> возвращенным значением или сообщением об ошибке
- в зависимости от результата.
После загрузки sysdata<1> страница перерисовывается. Значение
sysdata<1> будет показано в метке на странице благодаря
заменяемому тэгу DIRT tag.
Вызов сокета делается процедурой syssocket. Все параметры для
функции syssocket содержатся в общем блоке (common block) - syssock.
Параметры для syssock следующие:
продолжение »»»»