1. Fundamentals

Модуль в системе Seller 3.0 представляет собой некоторую изолированную часть, которая использует возможности ЯДРА. При написании следует каждый модуль располагать в отдельном .SQL файле, или в нескольких и пользоваться системой CASP, предоставляющей расширения языка SQL. В дальнейшем в примерах используется макросы для SQL.

Макросы следует использовать обязательно, так как их использование позволяет переделать систему просто их заменой. Поэтому их надо писать ОБЯЗАТЕЛЬНО.

Макросы могут быть без параметров, и тогда записываются словом, или с параметрами, которые следуют в {}. Макрос является ЧАСТИЧНЫМ, если он не содержит законченного SQL оператора, например

ins1= insert into a (alpha,beta) select 1,

Здесь предполагается такое использование этого макроса:

ins1 'string'

которое будет транслировано как

insert into a (alpha,beta) select 1, 'string'

Макрос можно переписать так, чтобы он не являлся частичным. При этом его надо использовать с параметром:

определение:

ins1= insert into a (alpha,beta) select 1,{p1}

использование:

ins1({'alpha'})

Так как использование частичных макросов делает текст более красивым, некоторые макросы частичные.

Об этом следует помнить. Вторая опасность заключается в том,

что некоторые макросы содержат более одного оператора. В этом случае при использовании в операторе if его следует брать в скобки begin и end. Эти свойства макросов указываются при их описании в этом тексте.