А. Шевелёв - DbfWebServer. Способ эффективной работы с таблицами DBFв среде Интернет
Все авторские права соблюдены. Напишите нам, если Вы не согласны.
Описание книги "DbfWebServer. Способ эффективной работы с таблицами DBFв среде Интернет"
Описание и краткое содержание "DbfWebServer. Способ эффективной работы с таблицами DBFв среде Интернет" читать бесплатно онлайн.
Данная книга предназначена для всех, кто трепетно относится к накопленным данным и хочет их сохранить и приумножить. Предлагается достаточно простой способ создания информационных систем различного назначения.
stEval (» F:=FieldGet (1)»,». t.»,». t.»)
где stEval – итератор для текущей записи;
«.t. " – блок кода в виде строки;
FieldGet (1) – операция для текущей записи;
asEval (A:=aArray (10), " P1:=x»)
где asEval – итератор массива.
Движок блоков кода
Сами по себе блоки кода – потрясающее достижение в программировании. Продолжение развития этой идеи, блоков кода (тримплетты) и виртуальной машины мы видим и в технологии Java. Блоки кода повсеместно используются в исходном тексте рассматриваемой программы. Это стало стилем программирования и элементом, позволяющим перенести часть исходного кода из компилируемой части программы в базу данных. Блоки кода позволяют строить очень изящные конструкции. Уменьшается объём исходного кода, повышается функциональность и выразительность программного кода.
Блоки кода можно хранить в базе данных в виде строк. С другой стороны, блоки кода можно хранить в массиве в скомпилированном виде, готовом для немедленного использования. Эти и другие свойства блоков кода дают возможность построить очень простой и эффективный движок блоков кода системы IxBase.
Напомним, что представляет собой блок кода. Блок кода – это безымянная функция. Синтаксис этой функции следующий:
{| a1,a2 |.t.}
Хотя функция эта безымянная, ссылку на неё можно присвоить переменной
bC:= {| a1,a2 |.t.}
и выполнить с помощью функции eval ()
Eval (bC)
В эту функцию можно передать параметры, функция с аргументами прмет следующий вид:
Eval (bC, a1,a2)
Список параметров безымянной функции при объявлении располагается между двумя вертикальными линиями:
{|a1,a2|.t.}
Движок блоков кода системы IxBase – это функция DbfRun (cName). В функцию передается имя блока кода, хранящегося в базе данных, который необходимо выполнить. Текст рабочей функции программы IxBase приведен ниже:
*********************************************************
FUNCTION dbfRun (iOrd)
/********************************************************
Синтаксис:
DbfRun (iOrd) —> evalution
Аргументы:
iOrd – имя блока кода, который необходимо выполнить.
Возвращаемое значение:
после выполнения функция возвращает результат выполнения блока кода.
Описание:
Функция системная.
На ее базе сформирован менеджер-интерпретатор блоков кода.
Функция работает с таблицей DBFBLO00.dbf
Если вызываемый вектор не существует в таблице блоков кода, то он будет создан.
Выполнение блоков кода поддерживается стеком, размер которого определен массивом arrDbfRun [].
Откомпилированный блок помещается в массив для повторного использования.
Например:
DBFRUN («ALLUSE00F2») – вызывается на выполнение блок кода с именем «ALLUSE00F2»
Файл: ixBase.prg
Автор: Анатолий Шевелев.
Дата создания: 1993 год.
Дата последнего изменения: 1995 год.
*********************************************************
LOCAL reT:=.t.
LOCAL inT:=aScan (arrDbfRun, {|z| z [1] ==iOrd})
LOCAL ixB
IF inT=0
aDel (arrDbfRun,1)
IF (ixB:=DbfBlo00-> (NaiSpr (iOrd,1,3))) =»»
ixAddVal (ixB, iOrd, SubStr (iOrd,9),ixB:=«*»)
ixB:=» {||.t.}»
ELSEIF ixB=«*»
ixB:=» {||.t.}»
ELSEIF ixB=» {|»
ELSE
ixB:=» {||"+ixB+»}»
ENDIF
arrDbfRun [Int:=Len (arrDbfRun)]:= {iOrd,& (ixB)}
END
BEGIN SEQUENCE
ixO:=iOrd
reT:=eVal (arrDbfRun [inT,2])
RECOVER
eval (& (» {||.t.}»))
errorblock (ErrorBlock ({||.t.}))
END SEQUENCE
RETURN reT
*********************************************************
Таблица для хранения блоков кода
Эта таблица для программы является системной и ключевой. Таблица состоит из трех полей. Первое поле хранит имя фолдера блока кода. Второе – предназначено для спецификаций имени вектора обработки вызова из программы. Третье – содержит сам блок кода.
Конец ознакомительного фрагмента.
Текст предоставлен ООО «ЛитРес».
Прочитайте эту книгу целиком, купив полную легальную версию на ЛитРес.
Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!
Похожие книги на "DbfWebServer. Способ эффективной работы с таблицами DBFв среде Интернет"
Книги похожие на "DbfWebServer. Способ эффективной работы с таблицами DBFв среде Интернет" читать онлайн или скачать бесплатно полные версии.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Отзывы о "А. Шевелёв - DbfWebServer. Способ эффективной работы с таблицами DBFв среде Интернет"
Отзывы читателей о книге "DbfWebServer. Способ эффективной работы с таблицами DBFв среде Интернет", комментарии и мнения людей о произведении.