[TC] миню зебат
Здравствуйте, industry.
всем, в миню зебат есть пункт "отправить запрос" подскажите как настроить этот
пункт? тоесть вопрос второй: как без подгляда разобратся, что это за редактор
тоесть можно и нужно маркировать или есть другие действия? еще немного поясню
суть вопроса устонавлеваеш программу редакторов 2-4 а, что впсывать? спасибо!ю
Здравствуйте, Александр.
отвечаю на письмо от 25 апреля 2010 г., 21:05:08:
честно сказать, то из вопроса практически ничего не понятно. правила
граматики не соблюдены, но попробую ответить. вот что сказано в
справке, сам не работал с данным сервисом, так-что на вопросы, как это
понять и сделать, ответить не смогу:
Формы запросов
Это инструмент для создания запросов, которые должны выполняться автоматически.
Запрос представляет собой сообщение с точно определенными полями и строковыми
переменными.
Для его отправки необходимо иметь в наличии The Bat! и шаблон формы - файл с
расширением .TBC (в этом случае пользователь выступает в роли клиента). Перед
отправкой запроса The Bat! предлагает заполнить необходимые поля в диалоговом
окне, которое выглядит как обычная форма в сети Internet. Программа, которой
предстоит выполнить ваш запрос, называется сервером. The Bat! преобразует указанные
данные в обыкновенное письмо, шифрует его, подписывает цифровой подписью и отправляет
на сервер (адрес определяется в шаблоне формы).
Система, организующая взаимодействие клиента и сервера посредством запросов и
ответов, называется The Bat! Client-Server (Клиент-Сервер). Она предназначена
для безопасного удаленного доступа к данным и управления ими в режиме off-line.
Задачи, решаемые системой, включают в себя управление банковскими счетами, бронирование
билетов, мест в гостинице и т.д. Для обеспечения безопасности транзакций используется
шифрование при помощи цифровых ключей RSA/IDEA/MD5 (RFC-1991). Программное обеспечение
сервера зависит от задачи последнего: у интернет-магазинов, банков и агентств
по продаже билетов оно может быть разным, но это не имеет никакого значения
для клиента, использующего The Bat!. Ему доступны все подобные услуги.
Чтобы транзакции выполнялись корректно, формат полей запроса должен быть одинаковым
как на клиентской, так и на серверной части. Так как сервер (как правило) работает
более чем с одним клиентом, именно его владелец перед началом любых транзакций
создает, подписывает и рассылает клиентам шаблоны форм (TBC-файлы).
По мере расширения спектра предлагаемых сервером услуг, клиентам рассылаются
обновленные версии шаблонов. Их цифровые подписи проверяются программой атоматически
в процессе импортирования - такая проверка служит гарантом соответствия шаблонов
сервера и клиента. Кроме того, наличие цифровой подписи позволяет защитить систему
от проникновения несанкционированных шаблонов - суррогатов с измененным адресом
сервера, отправленных третьими лицами под видом обновлений (могут привести к
нежелательным последствиям - простой сети, утечка информации).
Шаблоны форм запросов
Шаблоны форм хранятся в текстовых файлах (*.TBC), которые содержат специальную
цифровую подпись. Перед началом транзакций они создаются на сервере, а затем
подписываются и рассылаются клиентам. Чтобы импортировать такой шаблон, необходимо
воспользоваться командой главного меню "Свойства -> Шаблоны форм запросов".
Шаблон описывает свойства экранной формы для ввода всех необходимых данных, переменные
запроса и атрибуты письма, в котором он будет отправлен. Каждая строка шаблона
состоит из ключевого слова с одним или несколькими параметрами. Если в начале
строки стоит символ ";", она считается комментарием.
Атрибуты писем и свойства запросов
Для указания этих свойств используется ключевое слово MSG. Список его параметров:
Параметр
Описание
Значение
FORMTITLE
Заголовок окна экранной формы
Строка
FORMWIDTH
Ширина окна
Число
FORMHEIGHT
Высота окна
Число
AREAWIDTH
Ширина области ввода внутри окна
Число
AREAHEIGHT
Высота области ввода внутри окна
Число
TO
Адрес электронной почты для отправки письма
Строка
SUBJ
Тема письма
Строка
PRIORITY
Приоритет письма
Строка
ENCRYPT
Зашифровать письмо перед отправкой
ON или OFF
SIGN
Подписать письмо перед отправкой
ON или OFF
BATCH
Определяет начало пакетного запроса из нескольких команд
QUEUEOUT
Отложить отправку письма
TPL
Содержимое этого запроса
Строка
NFO
Текст, который будет добавлен в тело письма перед зашифрованными данными
Строка
FILEDLGTITLE
Заголовок окна для открытия файла по команде VFILERE
Строка
FILEDEFNAME
Имя файла, которое по умолчанию появится в диалоговом окне команды VFILERE
Строка
FILEFILTER
Файловая маска для команды VFILERE
Строка
FILEDEFEXT
Расширение, которое будет автоматически добавлено к имени файла в диалоговом
окне команды
VFILERE
Строка
Содержимое запроса
Данные для заполнения полей экранной формы представляют собой содержимое запроса.
Как только пользователь нажмет кнопку "OK", The Bat! поместит его в тело письма,
зашифрует или подпишет сообщение цифровой подписью (если это указано в шаблоне)
и отправит на сервер.
Тело письма выглядит как одна строка неограниченной длинны, содержащая строковые
переменные
Переменные отделяются друг от друга символом "&"
Имена переменных описаны в шаблоне
Значения переменных берутся из полей экранной формы, которую заполнил клиент
В строке запроса, которую программа передает серверу, имя переменной отделяется
от ее значения символом "=".
Пример строки запроса
Запрос содержит две переменные с именами servicetype и accountnumber, причем
accountnumber содержит значение "849780094", а servicetype - "getaccountlog".
В этом случае строка запроса выглядит так:
servicetype=getaccountlog&accountnumber=849780094.
Способ ее формирования указан в RFC1866 (раздел 8.2.1, тип - application/x-www-form-urlencoded).
Определенные символы такой строки необходимо изменить по следующим правилам:
пробел заменяется на символ "+", все остальные (кроме цифр и букв) - на "%HH"
(символ "процент" и две шестнадцатеричные цифры, представляющие ASCII-код заменяемого
символа).
Элементы формы
Экранная форма позволяет использовать строки ввода, списки, переключатели, метки
и кнопки. Эти элементы необходимо указать в шаблоне при помощи соответствующих
ключевых слов:
Элемент
Описание
EDIT
однострочное окно ввода
MEMO
многострочное окно ввода
CHECKBOX
переключатель
LISTBOX
список для выбора одной или нескольких строк
COMBOBOX
выпадающий список строк
HIDDEN
специальный невидимый элемент, значение которого пользователь изменить не сможет
LABEL
метка, текст которой выводится на экране
SUBMIT
кнопка, при нажатии на которую происходит отправка формы
CANCEL
кнопка отмены
Параметры элементов
1. У экранной формы могут быть такие параметры: X и Y -координаты верхнего левого
угла ее области, WIDTH и HEIGHT - ширина и высота элемента (большинство элементов
используют значения по умолчанию, либо подсчитывают их на основе размеров используемого
шрифта, так что указывать эти параметры необязательно), NAME, VALUE, DEFTPL и
VBODYRE - имя и значение переменной (для всех элементов за исключением LABEL,
CHECKLISTBOX, SUBMIT и CANCEL).
2. Для элемента EDIT можно указать параметр MASK, который позволяет заранее
определить формат введенных данных и PASSWORD - визуально заменяет все набранные
вами буквы на символ * (звездочка).
3. Элементы LISTBOX, COMBOBOX и CHECKLISTBOX позволяют указывать параметр ITEM,
чтобы добавить очередное значение в список.
4. LABEL, CHECKBOX, SUBMIT и CANCEL поддерживают параметр CAPTION (текст надписи
на этом элементе).
5. Кроме того, для элемента LABEL можно указать еще несколько параметров:
5.1 FOCUSNAME, который служит для привязки к другому элементу - если CAPTION
содержит "горячую клавишу" (префикс "&" перед необходимой буквой), а SHOWACCEL=ON,
после нажатия на эту клавишу фокус получит элемент из параметра FOCUSNAME.
5.2 JUSTIFY - для выравнивания текста надписи. Может принимать значения
LEFT (по левой стороне), CENTER (по центру), RIGHT (по правой стороне) и WORDWRAP
(в несколько строчек).
Пример TBC-файла
Ниже приведено содержимое типичного TBC-файла, который используется для получения
сводки курсов валют за определенный период времени. Экранная форма содержит
выпадающий список для выбора наименования валюты (COMBOBOX), а также поля для
ввода начальной и конечной даты (EDIT).
-----BEGIN PGP SIGNED MESSAGEMSG FORMTITLE="Currency Rate Request"
MSG TO="Client-Bank <client-bank@b*****.com>"
MSG SUBJ="Client-Bank"
MSG PRIORITY="High"
MSG FORMWIDTH=260
MSG FORMHEIGHT=190
MSG ENCRYPT=ON
MSG SIGN=ON
HIDDEN NAME="service" VALUE="getcurrencytrend"
LABEL CAPTION="&Currency" X=16 Y=8 FOCUSNAME="iso"
COMBOBOX NAME="iso" X=16 Y=24 WIDTH=120
COMBOBOX NAME="iso" ITEM="MDL","Moldavian Leu"
COMBOBOX NAME="iso" ITEM="USD","US Dollar"
COMBOBOX NAME="iso" ITEM="RUR","Russian Rouble"
COMBOBOX NAME="iso" ITEM="UAH","Ukrainean Hr."
COMBOBOX NAME="iso" ITEM="FIM","Finnish Mark"
COMBOBOX NAME="iso" ITEM="DEM","Deutche Mark"
COMBOBOX NAME="iso" ITEM="GBP","GB Pound"
LABEL CAPTION="&Starting Date" X=154 Y=8 FOCUSNAME="date1"
EDIT NAME="date1" X=154 Y=24
EDIT NAME="date1" MASK="00/00/0000" VALUE="01011996"
LABEL CAPTION="&Ending Date" X=154 Y=52 FOCUSNAME="date2"
EDIT NAME="date2" X=154 Y=68
EDIT NAME="date2" MASK="00/00/0000" VALUE="01011999"
SUBMIT CAPTION="OK" X=60 Y=112
CANCEL CAPTION="Cancel" X=154 Y=112
-----BEGIN PGP SIGNATUREiQDVAwUANfjoiRQeqwtQAYtzAQHkIQX+JhO61HCBfVw5VF3KqQhpApmOPhk2gEKz
C7qkNwpx7lexjbZvTVNGNfxTk7cTx5AxSFiUV32JH9WPm9fuJ5/bXIfWojDnaYbi
OM/BqS2KykFyoiuy+KULji10oRTt1jdC0Yqyv+OMgo2RuMwI0QhUozpHlVvkEHkk
r3acZ3NVIjBZHdW0I4YCjA3FKxBQmoFsQg9/ndjeE2lHZTCtLK2Kue036PeSCJq1
JWwVgWwT0JfhfFMXjj5tZm7pspNaGLst
=FBRX
-----END PGP SIGNATUREКогда клиент нажмет на кнопку с надписью "OK", The Bat! сгенерирует строку запроса:
service=getcurrencytrend&iso=USD&date1=01011996&date2=01011999
Так как значения параметров ENCRYPT и SIGN ключевого слова MSG установлены в
"ON", The Bat! подпишет и зашифрует эту строку перед отправкой на сервер. Тело
письма будет выглядеть примерно так:
-----BEGIN PGP MESSAGEhMwDFB6rC1ABi3MBBgBuPwdXPA/obgJJ/fcjDSqO7oh820EHlKpA5mzbYSwg/qWg
wYvNO/iJq4mofSfUnwozK3S5dD4zSeNcEqzQzw3ZZpE5D8aLOlNRAKlRh2ZIfN4W
6pmLJrhcX/GvsH667YUfL97r8LCWbaBtYI8D85ZluPSNGzt8AIgjIEZLKaAcq6yD
eYpO5GpxvvDvT8Vb80QnUZW5kTX9MGFg+gtUGqcb3f3dibyewWZfjndhkjj4Br4I
QLQ5v0mjx76lqxhbi5qmAAABM3PfOx1lpLE7VkHCTuQSPsm09a69rjQqgKimOPxj
hcH8wKXAi2FYDQ8wY8iszRZ9IeDHJtqOsdr0vUltT0Mj0jGvWi1Jb/jFOZ0jW/2J
k1uFMo5Dy/gaGQjjCIZvRT2dWy7CQ67vnegTi2zsvMAPM6/Bz7qTA6lsMMY88E9p
4qDlcN6OZIlY8DGaExcIDpoZwPChgIQfA55VQyNfN5YKzfBxCmtqSWbbLFh7WnkR
8FBLi9E8rPGg2jmzfAn1CczYnlfXinHtuAKmxmt3m3bOyNv5SGmMz+9WWhWIBH8Q
XIBXrfH2yDDldKwkyj0tsjeXs6LFS7D/kMCdBNM1FClWw1EftTBbdwL0ykDX9Z6f
NS6fQxYJxGrfAMp7hSaGydrenSKEviAy5o6HyjBxoCqQLGKdsWQ=
=wflO
-----END PGP MESSAGEПолучив письмо, сервер его расшифрует, проверить подлинность подписи, обработает
строку запроса и отправит текущий курс валют обратно пользователю.
Если добавить в шаблон эти строчки:
MSG TPL=" Услуга : $service$"
MSG TPL=" Валюта : $iso$"
MSG TPL="Начальная дата : $date1$"
MSG TPL=" Конечная дата : $date2$"
...то программа сформирует читабельный запрос и расшифрованное тело письма будет
выглядеть так:
Услуга : getcurrencytrend
Валюта : MDL
Начальная дата : 01.01.1996
Конечная дата : 01.01.1999
Если добавить в шаблон эти строчки:
MSG NFO="Письмо содержит запрос о текущем курсе валют и предназначено для"
MSG NFO="отправки в банк. Текст зашифрован при помощи OpenPGP, чтобы"
MSG NFO="обеспечить сохранность передаваемых данных. Если вы находитесь в"
MSG NFO="сети Internet, нажмите комбинацию клавиш <Shift+F2> или"
MSG NFO="воспользуйтесь пунктом главного меню программы "Ящик | Отправить"
MSG NFO="почту"."
... то тело письма будет выглядеть так:
Письмо содержит запрос о текущем курсе валют и предназначено для отправки в банк.
Текст зашифрован при помощи OpenPGP, чтобы обеспечить сохранность передаваемых
данных. Если вы находитесь в сети Internet, нажмите комбинацию клавиш <Shift+F2>
или воспользуйтесь пунктом главного меню программы "Ящик -> Отправить почту".
-----BEGIN PGP MESSAGEhMwDFB6rC1ABi3MBBgBuPwdXPA/obgJJ/fcjDSqO7oh820EHlKpA5mzbYSwg/qWg
wYvNO/iJq4mofSfUnwozK3S5dD4zSeNcEqzQzw3ZZpE5D8aLOlNRAKlRh2ZIfN4W
6pmLJrhcX/GvsH667YUfL97r8LCWbaBtYI8D85ZluPSNGzt8AIgjIEZLKaAcq6yD
eYpO5GpxvvDvT8Vb80QnUZW5kTX9MGFg+gtUGqcb3f3dibyewWZfjndhkjj4Br4I
QLQ5v0mjx76lqxhbi5qmAAABM3PfOx1lpLE7VkHCTuQSPsm09a69rjQqgKimOPxj
hcH8wKXAi2FYDQ8wY8iszRZ9IeDHJtqOsdr0vUltT0Mj0jGvWi1Jb/jFOZ0jW/2J
k1uFMo5Dy/gaGQjjCIZvRT2dWy7CQ67vnegTi2zsvMAPM6/Bz7qTA6lsMMY88E9p
4qDlcN6OZIlY8DGaExcIDpoZwPChgIQfA55VQyNfN5YKzfBxCmtqSWbbLFh7WnkR
8FBLi9E8rPGg2jmzfAn1CczYnlfXinHtuAKmxmt3m3bOyNv5SGmMz+9WWhWIBH8Q
XIBXrfH2yDDldKwkyj0tsjeXs6LFS7D/kMCdBNM1FClWw1EftTBbdwL0ykDX9Z6f
NS6fQxYJxGrfAMp7hSaGydrenSKEviAy5o6HyjBxoCqQLGKdsWQ=
=wflO
-----END PGP MESSAGEФормат файловой маски для параметра FILEFILTER
Файловая маска или фильтр, это обыкновенное имя файла, которое допускает использование
операторов "?" - любой символ и "*" - любая последовательность символов (Например,
*.TXT). Используется для отображения в стандартном диалоговом окне Windows только
необходимых вам файлов. Для того, чтобы корректно заполнить значение параметра
FILEFILTER, вы должны предоставить краткую характеристику необходимого типа файлов,
добавить символ "|" (не используйте пробелы до и после него) и указать сам фильтр.
Пример:
Тексты|*.TXT
В окне диалога будут показаны только файлы с расширением TXT, а в поле "Тип файлов"
- строка "Тексты". Чтобы создать несколько таких фильтров и переключаться между
ними в процессе выбора файлов, необходимо вставить между ними символ "|":
Тексты (*.TXT)|*.TXT|Отчеты (*.RPT)|*.RPT|Результаты (*.OUT)|*.OUT
Теперь у пользователя есть три варианта на выбор. Кстати говоря, их количество
ограничено только длиной строки - 255 символов. Как вы уже успели заметить, фильтры
дублируется в описании файлов и представлены в круглых скобках Так делать не
обязательно, просто эта форма записи считается негласным законом среди программистов.
Ее используют для того, чтобы пользователь знал заранее, какому расширению соответствует
указанный тип файлов.
Чтобы использовать несколько расширений в одном фильтре, необходимо вставить
между ними точку с запятой:
Все форматы файлов, который поддерживает наша программа|*.TXT;*.RPT;*.OUT