     5. makro-podstanowki

     kavdyj raz,  kak w komande wstre~aetsq ampersand (&), za
kotorym  sleduet  imq  stro~noj  peremennoj  pamqti,  "rebus"
zamenqet  ih  sodervimoe na  sodervimoe  stro~noj  peremennoj
pamqti.  |to pozwolqet opredelitx nekotorye fragmenty komand.
makrosy   polezny  dlq ~asto ispolxzuemyh slovnyh  wyravenij.
oni takve pozwolq`t organizowatx pereda~u  parametrow  wnutri
cepo~ki  wlovennyh komandnyh fajlow.  wse simwoly mevdu  &  i
sledu`}im  specsimwolom  (wkl`~aq probel)  s~ita`tsq   imenem
peremennoj  pamqti.   esli  polxzowatel`  nuvno  dobawitx   k
simwoli~eskoj  podstanowke simwoly,  to imq peremennoj pamqti
dolvno  bytx  ograni~eno to~koj.  ona budet udalena wo  wremq
podstanowki.

primery:

. ACCEPT "wwedi simwol diska" TO DR
. USE &DR:DATAFILE

     wo  wremq wypolneniq budet USE B:DATAFILE, esli w  otwet
na ACCEPT bylo wwedeno "B".

 . STORE 'DELETE RECORD ' TO T
  &t 5

 wo wremq wypolneniq budet DELETE RECORD 5.



     6.   interfejs s ne-"rebus"-processorami

     "rebus" movet ~itatx dannye iz fajlow, sozdannyh drugimi
processorami  (napr.,   BASIC,   FORTRAN,   PASCAL)  i  movet
generirowatx fajly,  kotorye wosprinima`t drugie  processory.
komanda  APPEND  imeet wozmovnostx ~itatx standartnye  koi-7-
tekstowye fajly (ispolxzuq sogla{eniq SCP o stroke teksta, za
kotoroj  sleduet  simwoly  wozwrata karetki  i  wwoda  stroki
(LINE  FEED)),  ukazywaq  opci`  SDF (SYSTEM  DATA  FORMAT -
sistemnyj  format   dannyh ).      podobnym  obrazom  komanda
COPY  generiruet  standartnye  koi-7- formatnye  fajly,  esli
ukazana   opciq  SDF ; esli ne  ukazano, tip  sozdawaemogo  s
opciqmi SDF i DELIMITED fajla budet .tht.

     nekotorye  processory i qzyki ~ita`t  i  pi{ut  fajly  w
formate s razdelitelqmi. w nem wse polq razdeleny zapqtymi, a
simwolxnye   stroki  zakl`~eny  w  kawy~ki.   "rebus"   movet
dobawlqtx  (APPEND)  i kopirowatx (COPY) |ti  fajly,  esli  w
komandah ukazano kl`~ewoe slowo DELIMITED. kogda ispolxzuetsq
wozmovnostx DELIMITED, predpolagaetsq opciq SDF.

     tak   kak  nekotorye  processory  ispolxzu`t   odinarnye
kawy~ki, a drugie - dwojnye, to APPEND budet wosprinimatx oba
slu~aq.  komanda "COPY" oby~no generiruet odinarnye  kawy~ki,
no  budet wywoditx l`boj simwol, kotoryj opredelen s  pomo}x`
WITH  w predlovenii DELIMITED.

     osobyj slu~aj,  esli "," ispolxzuetsq  w WITH dlq  COPY.
wse kone~nye probely w simwolxnyh strokah i na~alxnye probely
w   ~islah  ubira`tsq.   t.e.   simwolxnye  stroki  ne  budut
zakl`~atxsq ni w kawy~ki, ni w drugie simwoly.

     primery:

.USE <imq fajla>.DBF
.COPY TO <imq fajla>.TXT DELIMITED WITH "

.USE <imq fajla>.DBF
.APPEND FROM <imq fajla>.DAT SDF


             7. klassy komand


     pri   oby~nom  ispolxzowanii  "rebus"   dlq   wypolneniq
trebuemyh zada~ upotreblq`tsq razli~nye komandy. takie gruppy
priwedeny   nive.    nekotorye   "rebus"-komandy   otobrava`t
strukturnye    konstrukcii,     upotreblqemye    wo    mnogih
"sowremennyh"    qzykah.   takie   komandy  whodqt  w   klass
"komandnyj  fajl".  su}estwu`t nekotorye specialxnye  prawila
dlq ispolxzowaniq takih komand (sm razdel  9.0 ).

     sozdanie fajlow:

 CREATE  - sozdatx nowu` strukturu bazy;
 COPY    - kopirowatx su}estwu`}u` bazu;
 MODIFY  - izmenitx strukturu bazy;
 REPORT  - sozdatx fajl formy ot~eta;
 SAVE    - kopirowatx peremennye na disketu;
 INDEX   - sozdatx indeksnyj fajl;
 REINDEX - obnowitx staryj indeksnyj fajl;
 JOIN    - wywesti obxedinenie dwuh baz;
 TOTAL   - wywesti wse zapisi bazy.

     dobawlenie dannyh:

 APPEND - dobawitx dannye w konec bazy;
 CREATE - dobawitx dannye pri sozdanii bazy;
 INSERT - wstawitx dannye w bazu.

     redaktirowanie dannyh:

 CHANGE  - redaktirowanie stolbcow dannyh;
 BROWSE  - polno|krannoe okno dlq prosmotra i  redaktiro-
           waniq dannyh;
 DELETE  - pometitx zapisi dlq udaleniq;
 EDIT    - izmenitx dannye w ukazannyh polqh bazy;
 PACK    - udalqet zapisi, pome~ennye na udalenie;
 RECALL  - ubiraet pometki na udalenie;
 REPLACE - zame}aet dannye w polqh;
 READ    - zame}aet dannye iz  opredelennogo  polxzowatelem
           polnogo |krana;
 UPDATE  - pozwolqet sdelatx paketnye izmeneniq bazy.

     komandy otobraveniq dannyh:

 @      - otobravaet  formatiruemye  polxzowatelem   dannye
          na |krane ili printere;
 BROWSE - otobravaet do 19 zapisej s maksimalxno  wozmovnym
          dlq |krana ~islom polej;
 COUNT  - pods~et   zapisej,   udowletworq`}ih   nekotoromu
          uslownomu wyraveni`;
 DISPLAY - otobravaet zapisi, polq i wyraveniq;
 READ   - otobravaet dannye i podskazywa`}u` informaci`   w
          polno|krannom revime;
 REPORT - formatirowanie i otobravenie ot~eta dannyh;
 SUM    - wy~islenie  i otobravenie itoga  nekotorogo wyra-
          veniq nad gruppoj dannyh bazy;
 ?      - otobravaet spisok wyravenij.

      komandy pozicionirowaniq w baze:

 CONTINUE  - pozicionirowanie na sledu`}u` zapisx s uslo-
             wiqmi, ukazannymi w komande LOCATE;
 FIND      - pozicionirowanie na zapisx, sootwetstwu`}u`
             kl`~u w indeksnyh fajlah;
 GOTO      - pozicionirowanie na opredelennu` zapisx;
 LOCATE    - najti zapisx, udowletworq`}u` uslowi`;
 SKIP      - pozicionirowanie wpered i nazad.

       komandy raboty s fajlami:

 APPEND - zagruzitx   "rebus"-fajly   ili    fajly    w
          sistemnom formate (SDF);
 COPY   - kopirowatx bazy ili drugie bazy ili SDF-fajly;
 DELETE - uni~tovitx fajly;
 DO     - ukazywaet komandnyj fajl, iz kotorogo berutsq
          posledu`}ie komandy;
 RENAME - pereimenowatx fajly;
 SELECT - perekl`~enie mevdu ispolxzuemymi fajlami;
 SORT   - sozdatx kopi` bazy, kotoraq sortiruetsq po  od-
          nomu iz polej;
 USE    - ukazywaet fajl  bazy,  kotoryj  ispolxzuetsq  do
          sledu`}ego USE.

     komandy raboty s peremennymi :

 ACCEPT  - zapominaet simwolxnu` stroku w peremennoj;
 COUNT   - zapominaet s~et~iki w peremennyh;
 DISPLAY - movet otobravatx peremennye;
 INPUT   - zapominaet wyraveniq w peremenny ;
 RESTORE - poisk  sowokupnostej  zapomnennyh  peremennyh;
 SAVE    - zapominaet peremennye  w fajle;
 STORE   - zapominaet wyraveniq w peremenny ;
 SUM     - zapominaet summy w peremenny ;
 WAIT    - zapominaet navatye klawi{i w peremennyh.

     komandy raboty s  komandnymi fajlami:

 ACCEPT   - wwod simwolxnyh strok w peremennye pamqti;
 CANCEL   - terminiruet wypolnenie komandnogo fajla;
 DO       - wyzow komandnogo fajla na ispolnenie i
            wozmovnostx   organizacii   strukturnyh
            ciklow w komandnyh fajlah;
 IF       - uslownoe wypolnenie komand;
 ELSE     - alxternatiwnyj  putx  wypolneniq   komand
                wnutri IF;
 ENDDO    - terminator komandy DO WHILE;
 ENDIF    - terminator komandy IF;
 INPUT    - wwod wyravenij w peremennye pamqti;
 LOOP     - perehod na na~alo DO WHILE;
 MODIFY COMMAND - redaktirowanie komandnyh fajlow;
 RETURN   - konec komandnogo fajla;
 SET      - ustanawliwaet uprawlq`}ie parametry "rebus";
 WAIT     - priostanawliwaet wypolnenie komandnogo fajla.


      komandy uprawleniq ustrojstwami:

EJECT - propusk stranicy na printere;
ERASE - o~istka |krana.


     8.   operacii polno|krannogo revima

     nive pere~isleny uprawlq`}ie simwoly kursorom i  polnym
|kranom:

 ^E,A   -  na predydu}ee pole dannyh;
 ^X,F   -  na sledu`}ee pole dannyh;
 ^S     -  nazad na simwol w pole dannyh;
 ^D     -  wpered na simwol w pole dannyh;
 ^Y     -  za~istka probelami teku}ego polq dannyh;
 ^V     -  perekl`~atelx  mevdu  revimami   zapisi  i
           wstawki;
 ^G     -  uni~tovitx simwol pod kursorom;
 DEL    -  uni~tovitx simwol slewa ot kursora;
 ^Q     -  terminaciq polno|krannogo revima i wozwrat
           w normalxnyj revim  "rebus".  wse  izmeneniq
           peremennyh bazy terminiru`tsq.

     dlq revima EDIT:

 ^U     -  perekl`~atelx dlq teku}ej zapisi mevdu po-
           me~ennoj na udalenie i ne pome~ennoj;
 ^R     -  zapisx teku}ej zapisi na disk i otobrazitx
           predydu}u` zapisx;
 ^C     -  zapisx teku}ej zapisi i otobravenie sledu`}ej;
 ^W     -  zapisx teku}ej zapisi i wyhod na  |krannyj
           revim korrektirowki.

     dlq MODIFY:

^N     -  peredwinutx  wse  |lementy  wniz,  polu~iw
          swobodnoe mesto dlq wstawki nowogo polq;
^T     -  udalenie polq pod kursorom i podwivka  ni-
          veleva}ih polej wwerh;
^C     -  skrolling polej wniz;
^R     -  skrolling polej wwerh;
^W     -  zapisx  dannyh  na disk i  prodolvenie  normalxnyh
          operacij ;
^Q     -  wyhod bez sohraneniq izmenenij.

     w APPEND, CREATE i INSERT:

^C ili -  zapisx teku}ej zapisi i perehod k  sledu`}ej;
^R

<wk>    - wozwrat karetki, esli net izmenenij i kursor
          w  na~alxnoj pozicii - terminaciq operacii i
          predpolovenie normalxnyh operacij "rebus".

     w BROWSE:

^U     -  perekl`~atelx dlq teku}ej zapisi mevdu po-
          me~ennoj na udalenie i ne pome~ennoj;
^R     -  zapisx teku}ej zapisi i ~tenie predydu}ej;
^C     -  zapisx teku}ej zapisi i ~tenie sledu`}ej;
^W     -  zapisx teku}ej zapisi i wyhod  w  |krannyj
          revim korrektirowki
^Z     -  peredwinutx okno wlewo na odno pole;
^B     -  peredwinutx okno wprawo na odno pole.


               9.   komandy

     9.1. oobozna~eniq

 <komandy> ili    - l`boe wernoe  predlovenie  "rebus";  tak-
 <predloveniq>      ve  ozna~aet   polnye   predloveniq.   IF
                    bez  ENDIF  (ili DO WHILE bez ENDDO  estx
                    tolxko polowina predloveniq,   w to wremq
                    kak REPORT estx polnoe predlovenie.
 <sim.stroka> ili - l`baq simwolxnaq stroka; simwolxnaq stro-
 <sstroka>          ka  estx   posledowatelxnostx   simwolow,
                    zakl`~ennaq w   odinarnye   kawy~ki  ('),
                    dwojnye  kawy~ki  (")  ili  w  kwadratnye
                    skobki ([,]).
 <ograni~itelx>   - l`boj specsimwol; specsimwolami  qwlq`tsq
                    znaki    prepinaniq   tipa "()"*,:.
 <wyr>            - wyravenie;   wyravenie sostoit iz  ~isel,
                    funkcij, imen  polej  i simwolxnyh strok,
                    sostawlennyh w   proizwolxnom    porqdke:
                    "4+s"       i       "DOS='3'.OR.DOS='4'",
                    "$('ABC'+&COMESTR,N,#)='ABCDE FG'".
 <spis.wyr>       - spisok wyravenij,  razdelennyh  zapqtymi;
                    oby~no ispolxzu`tsq  prostye   wyraveniq.
                    wy{epriwedennye  2  poslednih wyraveniq -
                    slovnye, a perwoe - prostoe.
 <pole>           - imq polq zapisi.
 <spis.polej> ili - spisok imen polej  zapisej,   razdelennyh
 <spisok>           zapqtymi.
 <fajl> ili       - imq fajla.
 <imq fajla>
 <formfajl>       - imq formatnogo fajla ot~eta   (sm. razdel
                    3.4 i komandu REPORT).
 <indeks fajla>   - imq indeksnogo fajla.
 <kl`~>           - imq polq,  kotoroe budet indeksirowatxsq.
                    raznye bazy budut imetx  raznye  indeksy.
                    odna baza movet imetx neskolxko indeksow.
                    kl`~i mogut bytx  <wyravenie>  ili  imena
                    polej.
 <perpam>         - peremennaq pamqti; sozdaetsq po STORE ili
                    pri  ispolxzowanii  komand,   sohranq`}ih
                    zna~eniq   dlq  dalxnej{ego ispolxzowaniq
                    (ACCEPT, INPUT i t.d.)
                    w  "rebus"  dopustimo  do  64  peremennyh
                    pamqti.
<perpam  spisok>  - spisok  peremennyh  pamqti,   razdelennyh
                    zapqtymi.
<N>               - literal.
<oblastx>         - oblastx dejstwiq komandy.   mogut  prini-
                    matx 3 zna~eniq.
ALL               - wse zapisi w fajle.  posle  ustanowki  na
                    na~alo bazy, komandoj prosmatriwa`tsq wse
                    zapisi  fajla.  dlq  mnogih  komand ALL -
                    zna~enie po umol~ani`.  dlq drugih komand
                    po  umol~ani`  s~itaetsq  teku}aq  zapisx
                    (naprimer,  dlq DELETE). w slu~ae ispolx-
                    zowaniq frazy FOR, po umol~ani` s~itaetsq
                    ALL.

 NEXT N           - sledu`}ie N zapisej,  wkl`~aq teku}u` za-
                    pisx. N estx literal.
 RECORD N         - N-aq zapisx; N - literal.
 FOR <wyr>        - l`baq  zapisx,  esli logi~eskoe wyravenie
                    istinno.
 WHILE <wyr>      - wse zapisi,  poka logi~eskoe wyravenie ne
                    stanet lovnym. baza na na~alo ne ustanaw-
                    liwaetsq.

     drugie specsimwoly opisany pri swoih komandah.


      9.2. prawila raboty

     su}estwuet  mnovestwo  prawil  dlq  uspe{noj  raboty   s
"rebus".
     1.  glagol l`boj komandy dolven bytx perwym neprobelxnym
simwolom komandnoj stroki; frazy za nim  mogut    sledowatx w
l`bom  porqdke.   glagol  estx  slowo  - prikazanie.  CREATE,
APPEND,    REPORT,   SET,   DISPLAY   i      ERASE   wyzywa`t
specifi~eskie dejstwiq.  frazy    |kwiwalentny nare~iqm  (kak
dejstwowatx) i uto~nq`t    dejstwie. FOR, NEXT WITH - primery
slow, s kotoryh    na~ina`tsq frazy. wse  takie slowa (glagol
i     na~alxnye  slowa  fraz)  nazywa`tsq kl`~ewymi slowami.
     2. l`boe ~islo probelow movet razdelqtx slowa i frazy.
     3. wse komandy d.b. menee 254 simwolow  (rawno  i  posle
        makroras{ireniq).
     4.  komandy  i  kl`~ewye slowa mogut bytx  sokra}eny  do
perwyh  4  (ili bolee)  simwolow.  naprimer,  wmesto  DISPLAY
STRUCTURE mogut wwesti DISP STRU.
     5. bolx{ie i malenxkie bukwy mogut bytx ispolxzowany pri
wwode  komand,  kl`~ewyh slow,  imen polej,  imen  peremennyh
pamqti i imen fajlow.
     6.  nekotorye  fragmenty komand  mogut  opuskatxsq.  dlq
obozna~eniq ih ispolxzu`tsq kwadratnye skobki.
     7.  zarezerwirowannoe slowo estx kl`~ewoe slowo, kotoroe
wyzowet o{ibku, esli ono ispolxzuetsq dlq  ~ego-libo drugogo,
~em  dlq  togo,  dlq  ~ego ono prednazna~eno. w  "rebus"  net
zarezerwirowannyh  slow.  odnako,   nekotorye  imena polej  i
fajlow  mogut wyzwatx oslovneniq.  naprimer, komandnyj fajl s
imenem   WHILE   budet   nekorrektno    interpretirowan   kak
predlovenie  DO  WHILE  komandnym processorom DO, ALL kak imq
polq ne movet ispolxzowatxsq w rqde komand.
     8.  predloveniq  "rebus" w komandnom fajle  dolvny  bytx
wloveny  korrektno.  "rebus" ne zame~aet o{ibki  wloveniq,  a
budet wypolnqtx komandnye fajly nepredskazuemym obrazom.

      9.2.1. ?


      ?[<spis.wyr>]
      ??[<spis.wyr>]

     |ta   komanda  qwlqetsq  specialxnoj   formoj    komandy
DISPLAY ;  ona |kwiwalentna DISPLAY OFF <wyr>. ona movet bytx
ispolxzowana  dlq otobraveniq zna~eniq wyraveniq ili   spiska
wyravenij.  komanda "?" movet ispolxzowatx peremennye pamqti,
polq bazy,  konstanty i funkcii.  "?"  bez  parametrow   daet
stroku probelow.


     forma "??" podobna "?",  za iskl`~eniem togo, ~to  pered
wywodom  wyraveniq ne delaetsq wwod stroki  (LINE  FEED)  ili
wozwrat karetki.

primery:

 . USE EXAMPLE
 . 4
 . ? #
 4
 . ? NAME
  CHANG, LEE
 . ? 5+9
 14

     w sledu`}em primere komandnogo  fajla  "?"  ispolxzuetsq
dlq o~istki |krana displeq. komandnyj fajl zapuskaetsq po ko-
mande: "rebus <imq fajla>".

 SET DEFAULT TO G
 USE TRACE INDEX TRACE
 DISP STRU
 ?
 ACCEPT "ENTER TODAY'S DATE." TO DTE
 SET DATE TO &DTE
 RELEASE DTE
 RETURN


     9.2.2. @

     @<koordinaty> [SAY <wyr> [USING <FORMAT>]]
     [GET <peremennaq> [PICTURE <FORMAT>]]

      |ta komanda rabotaet s komandami SET FORMAT TO,  ERASE,
EJECT,  CLEAR  GETS,  READ   i qwlqetsq mo}nym sredstwom  dlq
otoobraveniq   opredelennoj  formatirowannoj  informacii   na
displee   ili  printere.   s  pomo}x`   @    interpretiru`tsq
izmeneniq,  wkl`~aq  sposob ispolxzowaniq komandy SET  FORMAT
TO. wse kombinacii ispolxzowaniq pere~isleny nive.

     <koordinaty> estx para "Y,X" i mogut imetx odin iz  dwuh
smyslow:  koordinaty displeq ili koordinaty  printera.  "Y,X"
obozna~a`t stroku (Y) i stolbec (X).  na bolx{instwe  |kranow
Y izmenqetsq w predelah 0-23,  a X - 0-79, t.e. 24  stroki  i
80  stolbcow.  "rebus"  ispolxzuet 0-` stroku  dlq  soob}enij
polxzowatel`,  i polxzowatelx dolven  izbegatx   ispolxzowatx
ee.  dlq  printera  Y  i  X  izmenq`tsq  w  predelah   0-254.
koordinaty  mogut  bytx  literalami,   ~islowymi  peremennymi
pamqti   ili  ~islowymi  wyraveniqmi.   komanda  SET   FORMAT
ispolxzuetsq dlq  izmeneniq zna~enij koordinat.

     kogda  ispolxzuetsq komanda SET FORMAT TO SCREEN (~to po
umol~ani`),  komanda "@" wyzywaet wywod dannyh na |kran. para
koordinat  0,0  ozna~aet  perwu` pozici`  (krajn``  wwerhu  i
slewa)  na  |krane.  para 10,15 ozna~aet 11-` stroku  i  16-j
stolbec   na   displee.   0-`   stroku    ne    rekomenduetsq
ispolxzowatx. komandy "@" movno ispolxzowatx w l`bom  porqdke
po  |kranu.  t.e., frazu SAY movno primenqtx k stroke  15  do
primeneniq SAY k stroke 10. to ve otnositsq i k stolbcam.

     kogda ispolxzuetsq komanda SET FORMAT TO PRINT,  komanda
"@" wyzywaet wywod dannyh na  printer.   para  koordinat  0,0
ukazywaet na krajn`` werhn`` slewa pozici` na liste   bumagi.
komandy "@" dlq printera dolvny bytx uporqdo~eny. w protiwnom
slu~ae  grozit  ~erezmernyj   rashod   bumagi.   polxzowatelx
movet   predstawitx  sebe,   ~to  on  ispolxzuet   pe~ata`}u`
ma{inku.   wse  komandy  k  stroke  5  dolvny  pred{estwowatx
komandam   k  stroke  6 (to ve i  dlq  stolbcow).  esli   |to
naru{eno,   pered  na~alom  nowoj stroki  proishodit  propusk
stranicy.

     esli ispolxzuetsq komanda SET FORMAT TO SCREEN,  komanda
ERASE o~istit ws` informaci` na |krane,  wypustit  wse  GET'y
(sm.  nive) i ustanowit koordinaty 0,0. esli ispolxzuetsq SET
FORMAT TO PRINT,  EJECT wwodit nowu` stranicu i ustanawliwaet
koordinaty 0,0.

     fraza   SAY  ispolxzuetsq  dlq  otobraveniq   wyraveniq,
kotoroe  ne  budet izmenqtxsq posledu`}im  redaktirowaniem  s
pomo}x`   komandy  READ.   podfraza  USING  ispolxzuetsq  dlq
formatizacii wyraveniq iz frazy SAY.  formatiru`}ie direktiwy
opisany nive.  ispolxzowanie podfrazy USING qwlqetsq  horo{im
tonom.   w slu~ae otsutstwiq USING, "rebus" budet proizwolxno
obra}atxsq s wyraveniem.

     frazy  SAY mogut ispolxzowatxsq na |krane i na printere.
GET-y - tolxko w komande SET FORMAT TO SCREEN.

     fraza  GET otobravaet teku}ee  zna~enie  polq peremennoj
ili  peremennoj  pamqti.  peremennaq  dolvna  nahoditxsq   do
ispolxzowaniq   GET  i  qwlqetsq  obxektom  dlq   dalxnej{ego
redaktirowaniq    komandoj   READ.   fraza   PICTURE    movet
ispolxzowatxsq    s   frazoj   GET,   pozwolqq    specialxnu`
formatizaci`  i  prowerku wwodimyh dannyh (sm. komandu READ).
esli  net ni odnoj PICTURE,  to tip dannyh formiruet  neqwnu`
PICTURE.

     esli tip dannyh polq peremennoj ili peremennoj pamqti  w
GET - logi~eskij,  to prowerka dannyh razre{aet  wwod  tolxko
simwolow 'T', 'F', 'Y', 'N' i ih malyh |kwiwalentow.

     maksimum 64 GET-ow mogut bytx  aktiwizirowany  w   l`boj
moment   wremeni.   kak  ERASE,   tak  i  CLEAR  GETS   mogut
ispolxzowatxsq dlq sbrosa su}estwu`}ih GET-ow.

     kogda dejstwuet SET FORMAT TO SCREEN i net ni  SAY-   ni
GET-fraz,   to   ostatok  linii, opredelennoj   koordinatami,
za~i}aetsq probelami.  sledowatelxno,  @ 10,0 budet  za~i}atx
ws` 11-` stroku.

     kogda  dejstwuet   SET  FORMAT TO  SCREEN,  dolvna  bytx
wydana  READ  dlq  wypolneniq GET-ow  (sm.   komandu   READ).
odnako,  kogda dejstwuet SET FORMAT TO PRINT, komandy "@"  ne
trebu`t   posledu`}ih   komand  READ  dlq  zawer{eniq   swoih
dejstwij.

     ne  trebuemyj  READ dlq  pe~ati  pozwolqet  polxzowatel`
prqmo   formatirowatx   wywod   na   l`boj,    predwaritelxno
nape~atannyj  material (naprimer:  ~eki,  stoimosti i ordera)
bolee  podhodq}im  obrazom.  polxzowatel`  neobhodimo  tolxko
pomnitx,  ~to komandy "@" dolvny ispolxzowatxsq tak, kak esli
by  pe~atx {la na pe~ata`}ej ma{inke.

      pri  ispolxzowanii  wozmovnostej SET  FORMAT  TO  PRINT
~asto  neobhodimo wype~atywatx bolee odnogo  |lementa.  wavna
wozmovnostx     zameny    sodervimogo    peremennyh    pamqti
koordinatnymi   zna~eniqmi.    sledu`}ij   primer    qwlqetsq
fragmentom komandnogo fajla, kotoryj generiruet specot~et dlq
osobyh celej.

 SET FORMAT TO PRINT
 GOTO TOR
 STORE 7 TO CNTR
 DO WHILE .NOT. EOF
    IF CNTR >= 50
        EJEST
        STORE 7 TO CNTR
    ENDIF
 @ CNTR,12 SAY R USING 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
 @ CNTR,48 SAY D USING 'XXXXXXXXXX'
 @ CNTR,64 SAY R1 USING 'XXXXXXXXXXXXXXXXXX'
 @ CNTR,88 SAY U USING 'XXXXXXXXXX'
 @ CNTR,104 SAY R2 USING 'XXXXXXXXXXXXXXXXXX'
 IF RSD <> 0
 @ CNTR,130 SAY RSD USING '9999'
 ENDIF
 STORE CNTR + 1 TO CNTR
 SKIP
 ENDDO
 RETURN
