У кого-нибудь есть опыт разработки с ESQL / C для INFORMIX-SQL?

Есть ли у кого-нибудь опыт разработки с использованием ESQL / C для INFORMIX-SQL, например, при вызове функций C в генераторе экрана «Выполнить» и составителя отчетов «ACE»?

У меня ISQL без ESQL / C. Я экспериментировал с компиляцией экрана выполнения, где в разделе инструкций я поставил «НАЧАЛО ВЫЗОВА userfunc () END», и, хотя у меня нет ESQL / C, экран выполнения успешно скомпилирован без ошибок! .. По-видимому, компилятор этого не сделал. t отклонить вызов C, даже если нет связанной программы на ESQL / C или C.


person Frank R.    schedule 07.03.2010    source источник


Ответы (1)


Да, у меня есть некоторый опыт общения с ними - сейчас смутный и далекий.

Компилятор формы (sformbld) должен принимать любой вызов функции, который вы делаете - он не может сказать, будет ли он действительным или нет во время выполнения. Он не знает, какие функции доступны (настраиваемому) исполнителю Perform, которые потребуются для запуска формы.

Точно так же компилятор отчета (saceprep) должен принимать любой вызов функции, который вы делаете, потому что он не может определить, будет ли он действительным или нет во время выполнения.

Чтобы запустить форму, которая содержит вызов функции, отличной от встроенных функций, вы должны создать настраиваемый бегун (вместо использования стандартной sperform). Сценарий для этого в Unix - cperf; он возьмет предоставленные вами определения функций и создаст пользовательский бегун, который может вызывать эти функции. Затем вы можете запустить отчет, в котором используются эти функции, с помощью настраиваемого бегуна. Если ваш собственный код не выполняет никаких вызовов ESQL / C, вам даже не нужен ESQL / C на машине; продукта ISQL достаточно.

Аналогичные обстоятельства применимы к отчетам; вы не можете использовать стандартный sacego, но должны создать соответствующий пользовательский раннер с cace.

Теперь, в смутные далекие темные века (скажем, до 1990 года), у вас не было пользовательских ACE и функций Perform с ISQL - вам пришлось покупать ISQL и ESQL / C. Но с тех пор, как была выпущена версия 4.00 ISQL (AFAICR, в 1988 или 1989), пользовательские бегуны и библиотеки были предоставлены с ISQL, и вам больше не нужно покупать ESQL / C, если вы не хотите встраивать функции ESQL / C в свои пользовательские функции.

Обратите внимание, что вы не создаете собственный компилятор; поэтому компилятор не может сказать, какие функции доступны.

person Jonathan Leffler    schedule 07.03.2010
comment
спасибо! .. Итак, как вы уже знаете, я искал ESQL / C 2.10 для ISQL 2.10 ... Итак, мне все еще нужен ESQL / C для моего приложения, так как мне нужны $ SQLEXEC, pf_get, pf_put, и т. д. Поскольку мой ISQL 2.10 для DOS устарел, моя логика подсказывает мне переписать мое приложение, скажем, что-то вроде Gillani FourGen CASE. Основное требование - приложение должно работать изначально в среде Windows, а не в UNIX. Монитор TP или многопользовательская возможность не требуются. Итак, доступен ли INFORMIX-SE для Windows? FourGen генерирует как символьные, так и графические экраны. Жаль, что IBM не предложила ISQL для Windows. - person Frank R.; 08.03.2010
comment
..среда с GUI / char-base, добавлением SQLEXEC и богатым синтаксисом SQL! .. Я считаю, что это отличный инструмент для быстрого прототипирования / разработки. Это действительно помогло бы Access и другим базам данных на базе Windows заработать свои деньги! - person Frank R.; 08.03.2010