Метод ввода 8
Пользователь:
Gena (IP-адрес скрыт)
Дата: 15, June, 2010 11:01
На конференции в Судаке был заново открыт метод ввода 8. Оказалось, что описание его в стандартной инструкции не полное. По этому по результатам экспериментов и воспоминаний Александра Иосифовича описываю этот метод ввода.
Этот метод ввода предполагает использование какого-либо внешнего приложения. Само приложение должно быть скопировано в директорию Ирбис. Обмен данными двунаправленный.
Передача данных в Ирбис и из него осуществляется по средствам Буфера обмена с использованием определенных префиксов:
Из Ирбиса данные передаются с префиксом IRBISOUT, а из внешнего приложения в Ирбис с префиксом IRBISIN.
При запуске программы из рабочего листа, ей через буфер обмена передается одна из двух команд:
IRBISOUT0 - предполагает, что ввод вызван или нажатием на кнопку ввода в поле, или по клавише F2. После обработки и возврата данных в Ирбис, они будут помещены в ОДНО ПОВТОРЕНИЕ поля. Если при вызове программы для ввода поле уже не пустое, то следом за приведенной командой передается содержимое поля.
IRBISOUT1 - предполагает, что ввод вызван клавишей F3, а результат надо вернуть в виде набора строк, каждая из которой станет ОТДЕЛЬНЫМ ПОВТОРЕНИЕМ поля. Аналогично передаются в программу данные, если поле не пустое. При наличии нескольких полей и вызове одного из них, будут переданы во внешнюю программу данные только из этого повторения.
В рабочем листе необходимо указать Режим ввода - 8, а в графе Доп. инф-ция - название_программы.exe Запуск осущесествляется как в командной строке(значит возможно указание набора ключей), а путь к программе Ирбис указывает дописыванием перед ней пути к своей директории.
От модератора: прикрепил тему, чтобы было.
Дополнение по поводу кодировок. Я писал свою программу для вызова этим методом на VisualBasic. Для передачи данных в Ирбис 32 никаких преобразований не нужно делать, а для Ирбис 64 необходимо предусмотреть перекодирование в UTF-8.
Редактировано 3 раз. Последний раз 10.05.2011 16:01 пользователем Gena.