

         DISPLEY ALL

    00001   136928   13   1673  ADJ.  WRENCH      7.13 189     9   0   9.98

    00002   221679    9   1673     . HAND SAW     5.17 173     4   1   7.95

    00003   234561    0     96  PLASTIC ROD       2.18 27    112  53   4.75

    00004   556178    2    813  ADJ. PULLEY      22.19 117     3   0  28.50

    00005   723756   73     27  ELECT.BOX        19.56 354     6   1  29.66

    00006   745336   13     27  FUSE BLOCK       12.65 63      7   2  15.95

    00007   812763    2   1673  GLOBE             5.88 112     5   2   7.49

    00008   876512    2    873  WIRE MESH         3.18 45      7   3   4.25

    00009   915332    2   1673  FILE              1.32 97      7   3   1.98

    00010   973328    0     27  CAN COVER         0.73 21     17   5   0.99


        .COUNT

    COUNT = 00010


        .COUNT FOR ITEM : NO>500000

    COUNT = 00007


        .COUNT FOR  'ADJ'&DESCR

    COUNT = 00002

         .GOTO TOP



         .COUNT FOR PRICE <10 NEXT 6

    COUNT = 00003



         .GOTO TOP



         .COUNT NEXT 6 FOR PRICE <10

    COUNT = 00003




    I - pods~et


    . USE  D:SHOPLIST


    .LIST

    00001  1  BEANS                   5        0.75

    00002  2  BREAD LOAVES            2        0.97

    00003  3  T-BONE                  4        3.94

    00004  4  PAPER PLATES            1        0.86

    00005  5  PLASTIC FORKS           5        0.42

    00006  6  LETTUCE                 2        0.53

    00007  7  BLEU CHEESE             1        1.96

    00008  8  MILK                    2        1.3

    00009  9  CHARCOAL                2        0.75


         .DISPLAY  STRUCTURE

    STRUCTURE  FOR FILE:   B: SHOPLIST.DBF

    NUMBERS OF RESORDS:    00009

    DATE OF LAST UPDATE:   12/10/76

    PRIMARY  USE DATABASE

    FLD     NAME    TYPE   WIDTH   DEC

    001    ITEM      C       020

    002    NO        N       005

    003    COST      N       010   002

    ** TOTAL **            00036


    .COUNT TO XX FOR  COST >1

    COUNT = 00003


    .? XX

     3



    I - boby; 2 - bulki hleba; 3 - mqso; 4 - bumavnye tarelki; 5 -

    5 - plastikowye wilki; 6 - salat - latuk; 7 - syr; 8 - moloko; 9 -

    drewesnyj ugolx; 10 - struktura fajla; 11 koli~estwo zapisi; 12 -

    data poslednej korrektirowki; 13 - perwi~noe ispolxzowanie bazy

    dannyh; 14 - pole imq tip {irina desqti~naq to~ka; 15 - itogo;

    16 - pods~et.

    CREATE
   _ ____


    CREATE [<imq fajla>]


         sozdaetsq nowyj struktuirowannyj fajl D BASE. polxzowatelx

    predostawlqet strukturu, imena polej i imq fajla dlq fajla bazy

    dannyh.

         esli imq fajla ne ukazano w komande, to polxzowatel` pod-

    skazywaetsq <imq fajla>, kotoroe dolvno bytx ispolxzowano, s

    pomo}x` soob}eniq:


     FILENAME:


    polxzowatelx wwodit prawilxnoe imq fajla so sledu`}im dopolnitelx-

    nym ograni~eniem: imq fajla ne movet sodervatx specialxnyh simwo-

    low, otli~a`}ihsq ot teh, kotorye oby~no ispolxzu`tsq operacionnoj

    sistemoj sr/m dlq specialxnyh celej/ takih kak w: dlq obozna~eniq

    diskowoda  "w"/.


         esli komandoj CREATE byl zadan fajl uve su}estwowaw{ij do |togo,

    to D BASE otwe~aet polxzowatel`:


    DESTROY EXISTING FILE ?      /uni~tovitx su}estwu`}ij fajl?/

    na ~to polxzowatelx dolven otwetitx u  ili N w zawisimosti ot

    situacii.


          esli fajl qwlqetsq nowym w sisteme ili esli polxzowatelx

    na wopros na uni~tovenie otwetil u, D BASE stanowitsq gotowoj

    prinqtx t polxzowatelq strukturu bazy  dannyh. na displej wydaet-

    sq sledu`}ee soob}enie:


    ENTER RECORD STRUCTURE  AS FOLLOWS:

      FIELD NAME, TYPE, WIDTH, DECIMAL,  PLACES

      OOI


    teperx polxzowatelx wwodit imena polej i su}estwu`}u` infor-

    maci` struktury. imenem polq qwlqetsq cepo~ka simwolow dlinoj

    do 10 simwolow, kotoraq sodervit bukwy alfawita,~islowye simwo-

    ly  i dwoeto~iq. imena polej dolvny na~inatxsq s bukwy alfawi-

    ta. polq mogut bytx treh tipow: simwolxnoe, ~islowoe i logi~es-

    koe. pole tipa opredelqetsq odnim simowlom:


          s - cepo~ka simwolow

          N - ~islowoe

          L - logi~eskoe


    {irina otnositsq k dline polq, naprimer,  cepo~ka simwolow movet

    bytx dlinoj w 20 simwolow, t.e. ee {irina rawna 20.  ~islowye

    dannye mogut bytx libo celo~islennymi, libo desqti~nymi. {irinoj

    celo~islennyh dannyh qwlqetsq maksimalxnoe koli~estwo cifr,koto-

    roe ovidaetsq, ~to oni mogut sodervatx. dlq desqti~nyh ~isel

    trebu`tsq dwe {iriny; perwoq qwlqetsq maksimalxnym koli~estwom

    cifr, na kotoroe ras~itywa`t dlq togo ~toby sodervatx desqti~noe

    ~islo // wkl`~aq desqti~nu` to~ku/, wtoraq {irina qwlqetsq koli-

    ~estwom cifr, kotoroe razre{eno s prawoj storony ot desqti~noj

    to~ki. logi~eskie dannye mogut imetx dlinu li{x rawnu` I.


    primery:


         .CREATE

         FILENAME: EXAMPLE

         INTER RECORD STRUCTURE AS FOLLOWS:

          FIELD   NAME, TYPE, WIDTH, DECIMAL PLACES

          001     NAME, C, 20

          002     TELE: EXTSN, C, 5

          003     MALL: STOP, C, 10

          004     (CR)

         INPUT NOW?X


    I - imq fajla; 2 - wwedite strukturu zapisi sledu`}im obrazom;

    3 - pole imq tip, {irina mesta desqti~noj to~ki; 4 - teperx

    wwod ?


    RECORD  00001


    NAME:          NEUMAN, ALFRED E.

    TELE: EXTSN:   1357

    MAIL: STOP:    123/456


    RECORD  00002


    NAME:          RECORDS, ROY

    TELE: EXTSN:   2468

    MAIL: STOP:    180/103


    RECORD  00003


    NAME:          CASSIDY, BUTCH

    TELE: EXTSN:   3344

    MAIL: STOP:    264/401


    RECORD  00004


    NAME:          CHANG, LEE

    TELE: EXTSN:   6743

    MAIL: STOP:    190/901


    RECORD 00005

    NAME:          POST,.....

    TELE: EXTSH:   ..........

    MAIL: STOP:    84/133


    RECORD  00006


    NAME:          (CR)



    DISPLEY STRUCTURE

    NO FILE IN USE, FILENAME: EXAMPLE

    STRUCTURE FOR FILE:    EXAMPLE

    NUMBERS OR RECORDS:    00005

    DATE OF LAST UPDATE:   00/00/00

    PRIMARY USE DATABASE

    FLD       NAME      TYPE WIDTH     DEC

    001     NAME          C   020

    002     TELE:EXTSN    C   005

    003B    MAIL: STOP    C   010

    ** TOTAL **


     .DISPLAY ALL

    00001 NEUMAN,ALFRED E       1357  123/456

    00002 RODGERS, ROY          2468  180/103

    00003 CASSIDY,BUTCN         3344  264/401

    00004 CNANG, LEE            6743  190/901

    00005 POST, WILEX           1011  84/13B


    I-zapisx; 2-nx`men, alxfred; 3-rodvers,roj;

    4-kessdi,bat~; 5-~eng,li; 6-post,uajli; 7-

    wozwrat karetki; 8-net fajla w ispolxzowanii,

    imq fajla; 9- struktura fajla; 10-koli~estwo

    zapisej; 11-data poslednej korrektirowki;

    12-perwi~noe ispolxzowanie bazy dannyh; 13-

    pole, imq, tip, {irina, dss.;  14-itogo.

    DELETE


    DELETE  [<oblastx dejstwiq>] [FOR <wyravenie>]

    DELETE FILE <imq fajla>


         wse zapisi,kotorye nahodqtsq w oblasti dejstwiq / i kotorye

     udowletworq`t wyravenie w  fraze FOR, kogda ona prisutstwuet /

     /otme~a`tsq na uni~tovenie. oblastx` dejstwiq, ustanowlennoj po

     umol~ani`, qwlqetsq tolxko teku}aq zapisx. zapisi fizi~eski ne

     uni~tova`tsq do teh por poka  ne budet osu}estwlena operaciq

     PACK, odnako, zapisi, otme~ennye na uni~tovenie, ne budut kopi-

     rowatxsq, dobawlqtxsq ili sortirowatxsq. operaciq RECALL movet

     bytx ispolxzowana dlq togo ~toby wosstanowitx zapisi, otme~ennye

     kak uni~tovaemye. zapisi, kotorye qwlq`tsq otme~ennymi na uni~to-

     venie, mogut bytx wydany na prosmotr. otmetka na uni~tovenie  po-

     qwlqetsq w wide zwezdo~ki mevdu nomerom zapisi i perwym polem.


         wo wtorom formate, fajl pod nazwaniem < imq fajla > budet

     udalen s diskowoda, gde on raspolagaetsq/ esli |to wozmovno /,

     i zanimaemaq im oblastx diskowoj pamqti budet otdana operacionnoj

     sisteme dlq perenazna~eniq. esli, odnako, fajl < imq fajla > naho-

     ditsq w nastoq}ij moment w rabote / w USE /, to |tot fajl ne budet

     uni~toven.


     primer:


         .LIST

         00001  136928  13  1673 ADJ. WRINCH   7. 13  189    9   0   9.98

         00002  221679   9  1673 SN. HAND SAW  5. 17  173    4   1   7.98

         00003  234561   0    96 PLASTIC ROD   2. 18  27   112 .53   4.75

         00004  556178   2  .873 ADJ.PULLEY   22. 19  117    3   0  28.50

         00005  723756  73    27 ELECT.BOX    19. 56  354    6   1  29.66

         00006  745336  13    27 FUSE BLOCK   12. 65  63     7   2  15.95

         00007  812763   2  1673 GLOBE         5. 88  112    5   2   7.49

         00008  876512   2   813 WIRE MESH     3. 18  45     7   3   4.25

         00009  915332   2  1673 FILE          1. 32  97     7   3   1.98



     I - razwodnyj gae~nyj kl`~; 2 - ru~naq pila; 3 - plastikowyj prutok;

     4 - reguliruemyj worot; 5 - kabelxnaq mufta; 6 - plawkij predohra-

     nitelx; 7 - kolokol wozdu{nogo nasosa; 8 - metalli~eskaq setka;

     9 - napilxnik;

    . DELETE RECORD 2

    00001 DELETION (S)


    .5


    .DELETE NEXT 3

    00003 DELETION (S)


    .LIST

    00001  136928  13  1673  ADJ.WRENCH      7.13  189   9    0    9.98

    00002 .221679   9  1673  SM.HAND SAW     5.17  173   4    1    7.98

    00003  234561   0    96  PLASTIC ROD     2.18  27  112   53    4.75

    00004  556178   2   873  ADJ.PULLEY     22.19  117   3    0   28.50

    00005 .723756  73    27  ELECT.BOX      19.56  354   6    1   29.66

    00006 .745336  13    27  FUSE  BLOCK    12.65  63    7    2   15.95

    00007 .812763   2  1673  GLOBE           5.83  112   5    2    7.49

    00008  816512   2   873  WIRE MESH       3.18  45    7    3    4.25

    00009  915332   2  1673  FILE            1.32  97    7    3    1.98


    .RECALL ALL

    00004 RECALL (S)


    .LIST

    00001  136928  13  1673  ADJ.WRENCH    7.13  189    9    0   9.98

    00002  221679   9  1673  SM.NAND SAW   5.17  173    4    1   7.98

    00003  234561   0    96  PLASTIC ROD   2.18  27   112   53   4.75

    00004  556178   2   813  ADJ.PULLEY   22.19  117    3    0  28.50

    00005  723756  73    27  ELECT.BOX    19.56  354    6    1  29.66

    00006  745336  13    27  FUSE BLOCK   12.65  63     7    2  15.95

    00007  812763   2  1673  GLOBE         5.88  112    5    2   7.49

    00008  876512   2   873  WIRE MESH     3.18  45     7    3   4.25

    00009  915332   2  1673  FILE          1.32  97     7    3   1.98


    .DISP FILES ON B

    DATABASE FILES    RCDS     LAST  UPDATE

    SHOPLIST         00007     06/06/76

    SHOPSAVE         00007     06/05/76



    .DELETE FILE B: SHOPSAVE

    FILE DELETED


    .DIPLEY FILES ON B

    DATABASE FILES      RCDS     LAST UPDATE

    SHOPLIST          00007      06/06/76


    I - uni~tovenie; 2 - wosstanowlenie; 3 - fajly baz dannyh;

    4 - koli~estwo zapisej; 5 - poslednqq korrektirowka; 6 -

    fajl uni~toven;

    DISPLAY


    A. DISPLAY [<oblastx dejstwiq>] [FOR <wyravenie>] [<spisok wyrav>][OFF]

    b. DISPLAY STRUCTURE

    B. DISPLAY MEMORY

    g. DISPLAY FILES [ON<diskowod>][LIKE <obrazec>] dejstwiq /i kotorye


            DISPLAY qwlqetsq osnowoj DBASE. kone~noj celx`, wsej raboty

    bazy dannyh qwlqetsq wyda~a dannyh, na prosmotr iz bazy dannyh/ po

    zaprsu.

     DISPLAY udowletworqet |toj celi putem predostawleniq {irokogo

    raznoobraziq formatow, kotorye osu}estwlq`t wybor velaemyh

    dannyh.

            w slu~ae a. na prosmotr wydaetsq wsq ili ~astx bazy dannyh

    nahodq}ejsq w USE. esli oblastx dejstwiq ne ukazana i w komande net

    FOR <wyravenie>, to tolxko teku}aq zapisx movet dawatx informaci`

    dlq wyda~i na prosmotr. esli oblastx dejstwiq ne ukazana, a FOR

    <wyravenie> imeetsq, to wse zapisi w baze dannyh moguut imetx swoj

    wklad pri osu}estwlenii prosmotra. esli ne ukazywaetsq predlovenie

    <spisok wyravenij>, to wse polq wyda`tsq na prosmotr. prawilxnye

    wyraveniq mogut sostoqtx iz polej dannyh, peremennyh pamqti

    ili kakogo-libo literalxnogo ~isla, simwola ili logi~eskogo.

    w kavdoj wydawaemoj na prosmotr stroke pristawlqetsq nomer

    teku}ej zapisi, esli ne wybran revim oFF. Esli ukazywaetsq

    predloveniE FOR, to tolxko te zapisi, kotorye udowletworq`t

    uslownomu wyraveni` predloveniq FOR, mogut dawatx informaci`

    dlq wyda~i na prosmotr.


            posle wyda~i na prosmotr grupp iz 15-ti zapisej,

    DISPLAY ovidaet kakogo-libo navatiq klawi{i dlq prodolveniq

    wyda~i. |to pozwolqet polxzowatel`"listatx"dlinnu` wyda~u.

    komanda LIST qwlqetsq identi~noj komande  DISPLAY ,za

    iskl`~eniem togo,~to LIST ne ovidaet posle grupp zapisej i

    ee oblastx` dejstwiq, ustanowlennoj po umol~ani`, qwlqetsq

    wse/aLL/ zapisi.





    simwol ESCAPE zakan~iwaet ispolnenie komand DISPLEY i LIST.


         w slu~ae b., na prosmotr wydaetsq tolxko struktura bazy

    dannyh, nahodq}ejsq w USE.

         w slu~ae w., wse opredelennye w teku}ij moment peremennye

    pamqti i sootwetstwu`}ego zna~eniq.


         slu~aj g. qwlqetsq sposobom  wyda~i na prosmotr fajlow.

    DBF, kotorye raspolaga`tsq na ustrojstwe, ustanowlennom po umol-

    ~ani` / ili na ustrojstwe diskowod /, wmeste s nekotoroj sta-

    tisti~eskoj informacii bazy dannyh. fraza LIKE pozwolqet wydatx

    na prosmotr fajly drugih tipow. <obrazec> oby~no imeet format

    *.tip, gde tip qwlqetsq cepo~koj simwolow TXT, FRN, MEM ili l`-

    boj drugoj cepo~koj simwolow iz treh bukw. |ti fajly wyda`tsq

    na prosmotr to~no tak ve, kak po komande DIR operacionnoj siste-

    my sr/m.


    primery:


         .USE w:INVENTRY


         .DISPLAY STRUCTURE

         STRUCTURE FOR FILE: B: INVENTRY. DBF

         NUMBER OF RECORDS:  00008

         DATE OF LAST UPDATE:00/00/00

         PRIMARY USE DATABASE

         FLD        NAME     TYPE  WIDTH   DEC

         001      ITEM        C     020

         002      COST        N     010    002

         003      PART:NO     C     005

         004      ON:HAND     N     005

         .. TOTAL                 00041 BYTES   /zame~anie: itog

                                         wkl`~aet 1 bajt zagolowka/


    1 - struktura fajla; 2 - koli~estwo zapisej; 3 - data poslednej

    korrektirowki; 4 - perwi~noe ispolxzowanie bazy dannyh; 5 - pole

    imq tip {irina desqti~naq to~ka; 6 - itogo; 7 - bajt.

    .DISPLAY ALL ITEM, PART. NO, COST* ON: HAND & (PART:NO, 1,2 )

    FOR ; COST > 100. AND . ON: HAND > 2 OFF

    TANK, SHERMAN        89793         404997.00   89

    TROMBONES            767767         15076.12   76

    RINGS, GOLDEN        702296          1000.00   70



     .DISPLAY MEMORY

     CLIENTINAM (C) DANGLEMEYER, PRETICE

     BUDGET     (N)  123456.70

     EF: STATUS (L) .T.

     ** TOTAL **     03 VARIALBLES USED  00027  BYTES  USED



     . DISPLAY FILES ON B: LIKE *. FRM

     TEST     FRM     ADMIN     FRM     ORDERS    FRM



     . DISPLAY FILES

     DATABASE FILES ORCDS   LAST UPDATE

     TEST     DBF   00077   00/00/00

     ADRECS   DBF   00073   09/23/81

     HISTSTR  DBF   00000   06/29/81

     NOT A DBASE II DATABASE




    1 - tank, {erman; 2 - trambony; 3 - zolotye kolxca; 4 - itogo;

    5 - peremennyh ispolxzowano; 6 - bajt ispolxzowano; 7 - fajly

    baz dannyh; 8 - koli~estwo zapisej; 9 - poslednqq korrektirow-

    ka; 10 - baza dannyh ne DBASE II










    A. DO <fajl>

    b. DO WHILE <wyravenie>

       <utwervdeniq>

       END DO


    B. DO CASE

         CASE <wyravenie>

            <utwervdeniq>

         CASE <wyravenie>

            <utwervdeniq>

         .

         .

         .

         [OTHERWISE]

         .... <utwervdeniq>

         ENDCASE


         w  lu~ae a, <fajl> otkrywaetsq i ~itaetsq. fajl w |tom

    slu~ae izwesten, kak komandnyj fajl /COMMAND FILE/. on polnostx`

    sostoit iz komand DBASE. whodnoj potok interpritiruetsq i ispolx-

    zuetsq tak, kak budto qwlq`tsq komandami, posylaemymi s klawia-

    tury.komandy DO mogut bytx wloveny glubinoj do 16 uwrownej /t.e.

    komandnye fajly mogut sodervatx komandy DO, kotorye wyzywa`t

    drugie komandnye fajly/. uprawlenie otdaetsq komandnym fajlom,

    kogda dostigaetsq konec fajla ili s pomo}x` komandy RETURN.esli

    teku}ij komandnyj fajl, byl wyzwan komandnym fajlom, to uprawle-

    nie budet peredano nazad komandnomu fajlu bolee wysokogo urownq

    esli wo wremq ispolneniq komandnogo fajla wstre~aetsq komanda

    CANCEL, to wse komandnye fajly zakrywa`tsq i isto~nikom posledu-

    `}ih komand stanowitsq klawiatura.

          w slu~ae b, esli wyravenie wy~islqetsq, kak  logi~eskoe

    TRUE, utwervdenie ENDDO. esli wyravenie wy~islqetsq w logi~es-

    koe FALSE,uprawlenie peredaetsq utwervdeni`, sledu`}emu za

    utwervdeniem ENDDO.


    zame~anie: utwervdeniq otnosqtsq k polnym utwervdeniqm.

    utwervdenie DO WHILE zakan~iwaetsq ENDDO. utwervdeniq dolvny

    bytx wloveny prawilxno; esli imeetsq IF "wnutri" DO WHILE, to

    ENDDO ne movet wstretitxsq do ENDIF. smotrite punkt 9.2 pra-

    wilo 8, dlq polu~eniq bolx{ej informacii.


    primery:


    DO ACCNTRAY


    DO WHILE. NOT EOF

      DISPLAY NAME

      .

      .

      .

      SKIP

    ENDDO


         CASE qwlqetsq ras{ireniem komandy DO i imeet format, poka-

    zannyj wy{e. net ograni~enij na koli~estwo fraz CASE, kotorye

    movet sodervatx DO CASE. fraza OTHERWISE qwlqetsq neobqzatelxnoj.

         DO CASE qwlqetsq struktuirowannoj proceduroj. otdelxnye CASE

    w konstrukcii mogut rassmatriwatxsq, kak iskl`~eniq w prawile,

    kotorye opredelq`tsq OTHERWISE. esli nekotoroe specialxnoe uslo-

    wie nuvdaetsq w nekotoroj specialxnoj obrabotke, to uslowiem

    budet CASE, a wse drugie uslowiq budut OTHERWISE. OTHERWISE tak-

    ve movet rassmatriwatxsq, kak uslowie po umol~ani`. smotrite

    perwyj primer nive.

         kakim obrazom DBASE uprawlqet konsrukciej DO CASE movet

    bytx lu~{e ob"qsneno w wide posledowatelxnostej utwervdenij

    IF. to estx, DBASE ispolqet DO CASE tak kak esli by oni byli

    spiskom utwervdenij IF-ENDIF.


    DO CASE                      IF ITEM='ORANGES'

       CASE ITEM='ORANGES'            l`bye utwervdeniq

        l`bye utwervdeniq         ELSE

       CASe ITEM='APLES'         IF ITEM='APLES'

        l`bye utwervdeniq             l`bye utwervdeniq

       OTHERWISE                  ELSE

        l`bye utwervdeniq             l`bye utwervdeniq

    ENDCASE                       ENDIF

                                ENDIF


         takim obrazom, DBASE analiziruet wyravenie w otdelxnyh

    frazah CASE i perwaq fraza, kotoraq qwlqetsq istinoj, imeet

    utwervdeniq, ispolnqemye posle nee. kogda DBASE dostigaet

    sledu`}ej frazy, na~ina`}ejsq s "CASE", ona wyhodit na ENDCASE.

    |to ozna~aet, ~to esli bolee odnogo CASE qwlqetsq istinnym, to

    budet ispolneno tolxko perwoe utwervdenie.


         esli prisutstwuet predlovenie OTHERWISE i ne odno iz

    predlovenij CASE ne qwlqetsq istinnym, to budut ispolnqtxsq

    utwervdeniq iz predloveniq OTHERWISE. esli predlovenie

    OTHERWISE net i ne odno iz predlovenij CASE ne qwlqetsq

    istinnym, to budet osu}estwlen wyhod iz DO CASE woob}e bez

    ispolneniq utwervdenij.

         l`bye utwervdeniq, kotorye pome}a`tsq mevdu "DO CASE"

    i perwym "CASE", ne budut ispolnqtxsq.

    primery:


    DO CASE

       CASE ITEM = "BROWN"

            <utwervdeniq>, kotorye obrabatywa`t BROWN

       CASE ITEM = "JONES"

            <utwervdeniq>, kotorye obrabatywa`t JONES

       CASE ITEM = "SMITH"

            <utwervdeniq>, kotorye obrabatywa`t SMITH

       OTHERWISE

            <utwervdeniq>, kotorye obrabatywa`t wse drugie imena

     ENDCASE


         w slu~ae, priwedennom wy{e, wse wyraveniq byli s odnim i

    tem ve imenem polq. |to neobqzatelxno. wyravenie movet soder-

    vatx wse ~to ugodno, a posledowatelxnostx predlovenij CASE ne

    dolvny imetx blizkogo rodstwa.


    DO CASE

       CASE TODAY = "wtornik"

            <utwervdeniq> dlq wtornika

       CASE WEATHER = "dovdx"

            <utwervdeniq> dlq dovdx

       CASE CITY = "los andveles"

            <utwervdeniq> dlq los andveles


    END CASE


    kone~no, esli |to - dovdliwyj wtornik w los andveluese, to

    tolxko CASE dlq wtornika budet ispolnen.


         predloveniq CASE ne dolvny bytx wse simwolxnymi cepo~kami,

    kak w |tih dwuh primerah. rabota`t l`bye wyraveniq.

    DO CASE


       CASE 3 = 2 + 1

            <utwervdeniq> dlq sloveniq

       CASE. NOT. A

            <utwervdeniq> dlq bulewoj logiki

       CASE "A" & "ABCDEF"

            <utwervdeniq> dlq logiki cepo~ek simwolow

       OTHERWISE

            <utwervdeniq>

    END CASE


         ENDCASE qwlqetsq utwervdeniem, ispolxzuemym dlq okon~aniq

    struktury DO CASE. kogda zakan~iwa`t rabotu predloveniq CASE ili

    OTHERWISE, uprawlenie wozwra}aetsq stroke, sledu`}ej za ENDCASE.


    EDIT


    EDIT [N]


         komanda EDIT pozwolqet polxzowatel` wyboro~no izmenqtx

    sodervimoe polej dannyh w baze dannyh. ispolxzowanie i dejst-

    wie komandy EDIT menqetsq w zawisimosti ot togo nahodqtsq ili

    net DBASE w revime raboty so wsem |kranom / smotrite komandu

    SET SCREEN/


         kogda DBASE nahoditsq w revime raboty so wsem |kranom,

    to redaktirowanie movet bytx sdelano s pomo}x` libo "EDIT",

    libo "EDIT N"/N predstawlqet soboj redaktiruemu` zapisx/.

    esli N otsutstwuet, to DBASE zapra{iwaet koordinaty redaktiru-

    emoj zapisi. odnako, |to podobno revimu raboty ne so wsem |kra-

    nom, wozmovnosti wsego |krana ispolxzu`tsq posle togo, kak

    predostawlqetsq nomer zapisi.


    smotrite punkt 8, operacii na wsem |krane, gde opisywa`tsq

    uprawlq`}ie klawi{i i pereme}enie kursora.


         kogda ispolxzuetsq komanda redaktirowanie w revime raboty

    ne so wsem |kranom, to DBASE zapra{iwaet:

    GOORD:

    zatem polxzowatelx wwodit koordinaty polq dannyh, kotoroe

    dolvno bytx izmeneno, i /neobqzatelxno/ noowe zna~enie.

    koordinatami polq dannyh qwlq`tsq: nomer zapisi i nomer polq

    /ili imq polq/. esli predostawlqetsq nowoe zna~enie, to DBASE

    zamenqet sodervimoe ukazannogo polq na nowoe zna~enie. esli

    nowoe zna~enie ne predostawlqetsq, to DBASE wydaet na prosmotr

    teku}ee zna~enie polq dannyh i podskazywaet polxzowatel` ob

    izmeneniqh. esli izmeneniq ne nuvny, to wozwrat karetki zastaw-

    lqet DBASE ne izmenqtx sodervimoe polq. nezawisimo ot togo

    dela`tsq izmeneniq ili net, DBASE podskazywaet polxzowatel`

    sledu`}u` paru koordinat drugim soob}eniem "COORD:".

         poslk togo kak perwyj nabor koordinat wweden, polxzowatelx

    movet opuskatx l`boe iz zna~enij koordinat, a DBASE budet

    ispolxzowatx predydu}ie zna~eniq |toj koordinaty. wyhod iz

    revima EDIT osu}estwlqetsq putem wwoda wozwrata karetki w ka-

    ~estwe otweta na zapros COORD.

         wse pole dannyh movet bytx o~i}eno putem wwoda CONTROL -

    -u, RETURN,wsqkij raz kogda wydaetsq na displej soob}enie

    CHANGE ?. |to pozwolqet polnostx` zanowo wwesti pole, esli

    nuvno. redaktirowanie polq dannyh movet bytx prerwano putem

    wwoda simwola CTL - Q. |to otmenqet l`boe sdelannoe redakti-

    rowanie i wosstanawliwaet w pole dannyh ee perwona~alxnoe

    sodervimoe.

         esli osu}estwlqetsq redaktirowanie indeksirowannogo fajla

    i ispolxzuetsq indeksnoe predlovenie, to D BASE budet korrekti-

    rowatx indeks, esli izmenqetsq pole kl`~a. esli s bazoj dannyh

    swqzany bolee odnogo indeksnogo fajly, to neispolxzuemye /UN-

    USED/ fajly ne budut zadejstwowany pri redoktirowanii.


    primery:

                  .USK SHOPLIST


                  .DISPLAY STRUCTURE

                  STRUCTURE FOR FILE:      SHOPLIST

                  HUMBER OF RECORDS:       00006

                  DATE OF LAST UP DATE:    07/03/76

                  PRIMARY USE DATABASE

                  FLD      NAME       TYPE   WIDTH   DEC

                  001    ITEM          C      020

                  002    NO            N      005

                  003    COST          N      010    002

                  **  TOTAL **              00036


                  .LIST

                  00001  BEANS  0303  SAN           5      0.69

                  00002  BREAD                      2      0.89

                  00003  T-BONE STEAKS              4      3.59

                  00004  LITTUCE                    1      0.49

                  00005  MILK (1 GAL BOTTLES)       2      1.19

                  00006  CHARCOAL                   1      0.69


                  . EDIT

                  COORD: 5, ITEM, MILK (1/2 GAL)


                  COORD: 2,1


                  ITEM: BREAD


                  CHANGE? D

                  TO      D LOAVES


    1 - struktura fajla; 2 - koli~estwo zapisej; 3 - data poslednej

    korrektirowki; 4 - perwi~noe ispolxzowanie bazy dannyh; 5 - pole

    imq tip {irina desqti~naq to~ka; 6 - itogo; 7 - boby konserw.;

         ;  8 - hleb; 9 - bif{tektsy; 10 - salat - latuk;

    11 - moloko/ butylki w odin gallon/; 12 - drewesnyj ugolx;

    13 - hleb; 14 - izmenitx ?; 15 - butylki

                  ITEM: BREAD LOAVES

                  CHANGE ? (CR)

                  COORD: 6,1



                  ITEM:  CHARCOAL, 50 BAGS

                  CHANGN ? (CR)

                  COORD: , 2


                  NO:      1

                  TO: 2

                  COORD: 4


                  NO:      1

                  TO: 2

                  COORD: (CR)

                  . LIST

                  00001  BEANS  0303  CAN     5     0.69

                  00002  BREAD LOAVES         2     0.89

                  00003  T-BONE STEAKS        4     3.59

                  00004  LETTUCE              2     0.49

                  00005  MILK (1/2 GAL)       2     1.19


                  00006  CHARCOAL, 50 BAGS    2     0.69


    1 - bulki hleba; 2 - izmenitx ? wozwrat karetki;  3 - drewesnyj

    ugolx; 4 - izmenitx ?; 5 - 5 me{kow; 6 - drewesnyj ugolx, 5 me{-

    kow; 7 - wozwrat karetki; 8 - boby konserw.;    ; 9 - bif{tesky;

    10 - salat - latuk; 11 -- moloko / 1/2 gallona /; 12 - drewesnyj

    ugolx, 5 me{kow

         / sledu`}aq ~astx komandnogo fajla pozwolqet redaktirowatx

    bazu dannyh na wyboro~noj osnowe. "L" qwlqetsq nasu}nym dlq

    osu}estwlenyiq raboty |tih komand; on izmenqet cepo~ku, pri-

    nimaemu` s pomo}x` ACCERTF, w ~isla, kotorye ponimaet EDIT./



    STORE 'I' TO X

    DO WHILE X <> 'O'

         ACCERD " wwedite nomer zapisi" TO X

         EDIT &X


    ANDDO



    EJECT


    EJECT


         |ta komanda zastawlqet postro~no pe~ata`}ee ustrojstwo

    sdelatx perewod fORMATA /progon stranicy/,esli libo PRINT

    nahoditsq w SET ON, libo FORMAT nahoditsq w SET TO PRINT. pri

    ispolxzowanii komandy e dlq togo, ~toby sdelatx prqmoe stra-

    ni~noe formatirowanie, komanda AJECT takve obnulqet registry

    strok i stolbcow.


    primery:


    .EJECT



    ENDDO


         utwervdenie ispolxzowalosx dlq okon~aniq cikla DO WHILE.

    kogda ono wstre~aetsq, to uprawlenie peredaetsq nazad utwerv-

    deni` DO dlq powtornoj ocenki logi~eskogo zna~eniq wyraveniq.

         smotrite komandu DO.


    dlq polu~eniq primerow, smotrite prilovenie a.



    ERASE


    ERASE


         |ta komanda o~i}aet |kran i pome}aet kursor / esli takowo

    imeetsq / w lewyj werhnij ugol |krana. pri ispolxzowanii komandy

    "e"  s nahodq}imsq w dejstwii revimom SET SCREEN ON, ERASE o~i}a-

    et pamqtx pred{estwu`}ih fraz GET i PICTURES komandy.


    primer:


    .ERASE



    FIND


    FIND < cepo~ka simwolow> ili ' <  cepo~ka simwolow >'

         |ta komanda zastawlqet DBASE najti /FIND/ perwu`

    zapisx w indeksirowannoj baze dannyh / w USE /, kl`~ kotoroj

    qwlqetsq takim ve samym kak < cepo~ka simwolow >. FIND pozwo-

    lqet o~enx bystro opredelitx mesto zapisi wnutri indeksirowan-

    noj bazy dannyh. tipi~nym wremenem dlq FIND w sisteme s gibki-

    mi disketami qwlqetsq interwal w dwe sekundy.


         FIND rabotaet tolxko s bazami dannyh, kotorye predwari-

    telxno indeksirowany / smotrite opisanie komandy INDEX /.esli

    komanda INDEX ispolxzowala w ka~estwe kl`~aa simwolxnoe wyra-

    venie, to komanda FIND rabotaet, kogda zada`tsq li{x neskolxko

    perwyh simwolow kl`~a.

    najdennaq zapisx budet perwoj zapisx`, kl`~ kotoroj imeet takoj

    ve porqdok i koli~estwo simwolow, ~to i <cepo~ka simwolow>.

    naprimer: zapisx, kl`~om kotoroj qwlqetsq "SMITH, JOHN", movet

    bytx najdena s pomo}x` utwervdeniq 'FIND SMI' pri  uslowii, ~to

    net drugih kl`~ej, na~ina`}ihsq s 'SMI', predstawlq`}egosq SMITH,

    JOHN w indekse. FIND wsegda nahodit tolxko perwu` zapisx, kl`~om

    kotoroj qwlqetsq ta ve cepo~ka simwolow, ~to i <cepo~ka simwolown>.

    dave esli ukazatelx zapisi, dalee, pereme}aetsq nive w fajle,

    posledu`}aq komanda FIND s tem ve samym kl`~om najdet perwu`

    zapisx.

         esli indeks byl sozdan s ~islowym kl`~om, to najdennaq zapisx

    budet perwoj zapisx`, kl`~om kotoroj qwlqetsq weli~ina, arifme-

    ti~eski rawnaq ob"ektu komandy FIND.

    zame~anie: dlq indeksow, nastroennyh i na simwoly, i na ~isla,

    ob"ektom komandy FIND qwlqetsq cepo~ka simwolow s kawy~kami

    w ka~estwe razdelitelej ili bez nih. znaki kawy~ek stanowqtsq

    neobhodimymi li{x kogda perwona~alxnyj kl`~ imel na~alxnye

    probely. w |tom slu~ae, wnutri kawy~ek dolvno bytx to~noe koli-

    ~estwo na~alxnyh probelow.

         esli w ka~estwe ob"ekta komandy FIND nuvna  peremennaq pamq-

    ti, to ona dolvna bytx pome}ena posle komandy FIND putem ispolx-

    zowaniq - makropodstanowki, naprimer, FIND &NAME, gde NAME qwlq-

    etsq peremennoj  pamqti tipa cepo~ki simwolow. ~islowye peremennye

    pamqti dolvny bytx sna~ala preobrazowany w cepo~ku simwolow putem

    ispolxzowaniq funkcii STR prevde ~em oni mogut bytx ispolxzowany

    w makro. dlq rassmotreniq makrosow smotrite punkt 5.

         kak tolxko putem ispolxzowaniq komandy FIND opredeleno mesto

    -polovenie zapisi w baze dannyh, ona movet bytx obrabotana to~no

    tak ve, kak l`baq drugaq zapisx bazy dannyh.to estx, ona movet

    bytx zapro{ena, izmenena, ispolxzowana w wy~isleniqh i t.d..

    komanda DBASE, kotoru` wyzywa`t prodwivenie bazy dannyh

    /naprimer, LIST,  REPORT, COPY i T.d./,obrabatywa`t najdennu`

    zapisx perwoj i perehodqt k sledu`}ej zapisi w posledowatelx-

    nosti, baziruqsx na kl`~e.

         esli zapisi, kl`~ kotoroj identi~et <cepo~ke simwolow>,

    ne su}estwuet, to na |kran wydaetsq soob}enie: "NO FIND" i

    funkcii nomera zaapisi "#" budet dano zna~enie, rawnoe nul`.

         esli nuvna wtoraq zapisx s tem ve samym kl`~om, to dolvna

    bytx ispolxzowana komanda SKIP ili komanda LOCATE FOR <wyrave-

    nie>. SKIP ne znaet, kogda bolx{e net sopostawleniq, LOCATE

    / tak kak kl`~ byl ispolxzowan w wyravenii / sposobna najti

    dopolnitelxnye sopostawleniq.

         revim SET EXACT ON priwodit  FIND k  "popadani` w celx"

    tolxko esli imeetsq po-simwolxnoe sopostawlenie dlq wsego

    kl`~a / za iskl`~eniem kone~nyh probelow /.


    primery:

         .USE SHOPLIST INDEX SHOPIHDX


         .LIST

         00001    BCANS                       5     0.75

         00007    BLCU CHEESE                 1     1.96

         00002    BREAD LOAVES                2     1.06

         00009    CHARCOAL                    2     0.75

         00006    LETTUCE                     2     0.53

         00008    MILK                        2     1.30

         00004    PAPER PLATES                1     0.94

         00005    PLASTIC FORKS               5     0.42

         00003    T-BONE STEAK                4     4.33



    1 - boby; 2 - syr; 3 - bulki hleba; 4 - drewesnyj ugolx;

    5 - salat-latuk; 6 - moloko; 7 - bumavnye tarelki; 8 -

    plastikowye wilki; 9 - bif{teksy

         .FIND BREAD


         .DISPLAY

         00002    BREAD LOAVES                2     1.06


         .DISPLAY NEXT 3

         00002    BREAD LOAVES                2     1.06

         00009    CHARCOAL                    2     0.75

         00006    LETTUCE                     2     0.53


         .FIND P


         .DISPLAY

         00004    PAPER PLATES                1     0.94


         .FIND PLAS


         .DISPLAY

         00005    PLASTIC FORKS               5     0.42


         .FIND P


         .DISPLAY

         00004    PAPER PLATES                1     0.94



    1 - hleb; 2 - bulki hleba; 3 - drewesnyj ugolx; 4 - salat-

    -latuk; 5 - bumavnye tarelki; 6 - plastikowye wilki


         FIND rabotaet w mnogokratno indeksirowannom fajle, esli

    dwa kl`~a pome}a`tsq w kawy~ki.

    . LIST


    00001   FLYING HIGH            BIRD   I.  M.     IMB001 02/29/04

    00005   HESTING PROCCDURCS     BIRD   I.  M.     IMB002 09/25/06

    00002   DIVING                 FISH   U.  R.    .URF001 12/30/23

    00008   NURSING                KNIGHT AND GALE   KG001  08/04/44

    00010   VACATIONING IN EUROPE  KNIGHT AND GALE   KG002  06/24/42

    00004   .....................  LUNCH, T.         IL001  04/01/00

    00003   HOW TO SURVIVE A CRASH LUNCH, M.         ML001  01/01/30

    00007   IVCN PRIMES            SLADCK,L          LS001  12/01/73

    00009   IVEN MORE PRIMES       SLADCK,L          LS002  04/24/73

    00006   THINKING BIG           TIM,TINY          TT001  05/07/42


    .FIND "BIRD,  I.M.   IMB002"


    .DISP

    00005  NESTING PROCEDURES      BIRD,I.M.         IMB002 09/25/06



    .FIND "LYNCH, M"


    .DISP

    00003   HOW TO SURVIVE A CRASH LYNCH,M.          ML001   01/01/30


    .FIND "SLADEC,L      LS002"


    .DISP

    00009   EVEN MORE PRIMES       SLADEC,L          LS002   04/24/73



    1 - leta`}ij wysoko; 2 - wlovennye procedury; 3 - nyrq`}ij;

    4 - uhaviwa`}ij; 5 - prowodq}ij otpusk w ewrope; 6 - sposoby

    zawqzywatx uzel; 7 - kak perevitx bankrotstwo; 8 - prostye

    ~isla; 9 - bolx{ie prostye ~isla; 10 - duma`}ij mnogo; 11 -

    berd; 12 - fi{; 13 - knajt i gejl; 14 - lin~; 15 - sl|jdek;

    16 - tim mlad{ij;

    GO ili GOTO


    a. GOTO RECORD <N>

    b. GOTO TOP

    B. GOTO BOTTOM

    g. <N>

    d. GOTO <peremennaq>


            |ta komanda ispolxzuetsq dlq izmeneniq poloveniq

    ukazatellq zapisej bazy dannyh.

            i w slu~ae a, i w  slu~ae g, ukazatelx teku}ej

    zapisi ustanawliwaetsq na nomer zapisi <N>.slu~aj g qwlq-

    etsq bolee korotkim sposobom napisaniq slu~aq a.

            w slu~aqh b ili w fajl w USE ustanawliwaetsq na na-

    ~alo / konec/ TOP /BOTTOM/ i ukazatelx teku}ej zapisi ukazy-

    waet na perwu` /posledn`` zapisx w fajle. kogda fajl w USE

    indeksirowan, to perwaq /poslednqq zapisx neobqzatelxno

    qwlqetsq perwoj/ poslednej fizi~eskoj zapisx` w baze dannyh,

    a qwlqetsq perwoj /poslednej soglasno kl`~u, ispolxzuemomu dlq

    indeksacii bazy dannyh.

            slu~aj d. movet bytx ispolxzowan dlq ustanowki

    w pozici` nomera zapisi, kotoryj sodervitsq w peremennoj

    pamqti.


    primery:


    .USE SHCRLIST

    .GOTO RECORD 6

    .6

    .DISPLAY

    00006 LETTUCE            2       0.53

    .GOTO TOP

    .DISPLAY


    00001 BEANS                    5     0.75


    .GOTO BOTTOM


    .DISPLAY


    00009 CHARCOAL                 2     0.75



    .LIST

    00001 BEANS                    5     0.75

    00002 BREAD LOAVES             2     0.97

    00003 T-BONE                   4     3.94

    00004 PAPER PLATES             1     0.86

    00005 PLASTIC FORKS            5     0.42

    00006 LETTUCE                  2     0.53

    00007 BLEU CHEESE              1     1.96

    00008 MILK                     2     1.30

    00009 CHARCOAL                 2     0.75



    .STORE 4 TO RECORDNO

     4


    .GOTO RECORDNO


    .DISP

    00004 PAPER PLATES             1     0.86



    1 - boby; 2 - drewesnyj ugolx; 3 - bulki hleba; 4 - bif{teksy;

    5 - bumavnye tarelki; 6 - plastikowye wilki; 7 - salat-latuk;

    8 - syr; 9 - moloko

    IF


      IF <wyravenie>

         <komandy>

     [ELSE

         <komandy>]

     ENDIF


            komanda IF pozwolqet osu}estwitx ispolnenie drugih

    komand soglasno uslowi`. |ta komanda ispolxzuetsq w komand-

    nyh fajlah. kogda <wyravenie> wy~islqetsq, kak TRUE /istina/,

    to ispolnq`tsq komandy, sledu`}ie za IF. kogda <wyravenie>

    wy~islqetsq kak FALSE /lovx/, to ispolnq`tsq komandy,sledu`-

    }ie za ELSE. esli ne ukazana eLSE, to wse komandy propuska`t -

    sq do teh por, poka ne wstretitsq ENDIF. KOMAndy IF mogut bytx

    wloveny na l`bom urowne.


    zame~anie: <komandy> otnosqtsq k celym komandnym utwervdeniqm.

    komanda IF na~inaetsq s IF i zakan~iwaetsq ENDIF. utwervdeniq

    dolvny bytx wloveny prawilxno, IF s DO WHILE w istinoj /ili

    lovnoj/ ~asti ne dolvno zakan~iwatxsq do togo kak zakon-

    ~itxsq DO WHILE. dlq polu~eniq bolee polnoj informacii,

    smotrite 8-oe prawilo punkta 9.8.


    primery:


            IF STATUS = 'MARRIED'


               DO MCOST

            ELSE

               DO SCOST

            ENDIF


            IF $*1

               STORE CITY + STATE TO LOCATION

            ENDIF



    dlq polu~eniq dopolnitelxnyh primerow, smotrite prilovenie a.


    INDEX


    INDEX ON <wyravenie> TO <imq indeksnogo fajla>


            komanda INDEX wyzywaet indeksaci` wyraveniem te-

    ku}ego fajla w USE. <wyravenie> izwestno kak "kl`~". |to

    ozna~aet, ~to sistemoj DBASE budet postroen fajl /indeksnyj

    fajl/, kotoryj sodervit ukazateli na zapisi w fajle w USE.

    indeksnyj fajl delaetsq takim obrazom, ~to baza dannyh w USE

    poqwlqetsq otsortirowannoj po kl`~u dlq posledu`}ih operacij.

    fajl w ispolxzowanii /USE/  fizi~eski ne izmenqetsq. sorti-

    rowka osu}estwlqetsq w porqdke wozrastaniq. sortirowka w po-

    rqdke umenx{eniq movet bytx sdelana po wyraveni`, kotoroe

    qwlqetsq ~islowym. dlq polu~eniq primera smotrite nive.

            indeksaciq pozwolqet osu}estwitx o~enx bytroe opre-

    delenie pozicij zapisej bazy dannyh putem ukazaniq wsego ili

    ~asti kl`~a s pomo}x` ispolxzowaniq komandy FIND. /smotrite

    FILD./ baza dannyh ne dolvna bytx indeksirowana, esli s po-

    mo}x` ee ne budet ulu~{eno rabota`}ee prilovenie. indeksiro-

    wannaq baza dannyh movet bytx pozdnee ispolxzowana s ili bez

    wozmovnosti indeksacii.

            ~asto, komanda INDEX  dolvna bytx sdelana li{x

    odnavdy dlq kakogo-libo zadannogo fajla. naprmer, koman-

    da APPEND budet awtomati~eski korrektirowatx indeksnyj

    fajl, kogda dobawlq`tsq zapisi.

            esli indeksirowannaq baza dannyh ispolxzuetsq

    powtorno /pri bolee pozdnej rabote DBASE ili pozdnee w

    tom ve samom seanse raboty,w kotorom delalasx perwona-

    ~alxnaq operaciq INDEX /,to dolven bytx ispolxzowan

    specialxnyj format komandy USE/ to estx, USE <imq fajla

    bazy dannyh> INDEX <imq indeksnogo fajla> /.

            l`boe koli~etwo indeksnyh fajlow movet bytx po-

    stroeno dlq kakoj-libo bazy dannyh, odnako, tolxko

    ispolxzuemye indeksnye fajly budut awtomati~eski korrek-

    tirowatxsq komandami APPEND,EDIT,REPLASE,READ ili BROWSE.

            indeksirowannyj fajl movet bytx upakowan

    komandoj PACK i baza dannyh, tak ve kak i indeksnyj

    fajl, budet prawilxno skorrektirowana. odnako, esli

    bolee odnogo indeksnogo fajla swqzany s upakowannoj

    bazoj dannyh, to |ta baza dannyh dolvna bytx powtor-

    no indeksirowana po |tim kl`~am.


    predosterevenie: funkciq TRIM ne dolvna bytx ispolxzowana,

    kak ~astx indeksnogo kl`~a. takve, esli w ka~estwe ~asti

    ili wsego kl`~a ispolxzu`tsq funkcii /ili STR, to oni dolv-

    ny imetx w ka~estwe swoego parametra dliny literalxnye ~is-

    la / ne peremennye i ne wyraveniq /./ naprimer, INDEX

    NO & (NAME, N, 5)+STR (AMOUNT, 5) TO ENDXFILE, a ne INDEX

    ON & (NAME, N, N+5) + STR (AMOUNT, SIZEVAR) TO ENDXFILE./



    primery:

            .USE SHOPLIST


            .LIST

            00001   BEANS          5     0.75

            00002   BREAD LOAVES   2     1.06

            00003   T-BONE STEAK   4     4.33

            00004   PAPER PLATES   1     0.94

            00005   PLASTIC FORKS  5     0.42

            00006   LETTUCE        2     0.53

            00007   BLUE CHEESE    1     1.96

            00008   MILK           2     1.30

            00009   CHARCOAL       2     0.74


    1 - boby; 2 -  bulki hleba; 3 - bif{teksy; 4 - bumavnye

    tarelki; 5 - plastikowye wilki; 6 - salat-latuk; 7 - syr;

    8 - moloko; 9 - drewesnyj ugolx

            .DISPLAY STRUCTURE

            STRUCTURE FOR FILE:    SHOPLIST.DBF

            NUMBER OF RECORDS:     00009

            DATE OF LAST UPDATE:   07/03/76

            PRIMARE USE DATABASE

            FLD       NAME     TYPE WIDTH DEC

            001     ITEM        C    020

            002     COST        N    010  002

            ** TOTAL**             00036


            .NOTE CREATE INDEX FILE SHOPINDX


            .INDEX ON ITEM TO SHOPINDX


            .HOTE NOW IN INDEX ORDER


            .LIST

            00001 BEANS            5     0.75

            00004 BLEU CHEESE      1     1.96

            00002 BREAD LOAVES     2     1.06

            00009 CHARCOAL         2     0.75

            00006 LETTUCE          2     0.53

            00008 MILK             2     1.30

            00004 PAPER PLATES     1     0.94

            00005 T-BONE STEAK     4     4.33


            .NOTE INDEXING ALLOVS  FIND COMMAND


            .FIND MILK


            .DISPLAY

            00008  MILK            2     1.30


            FIND DO


            .DISPLAY

            00001  BEANS           5     0.75

            .SKIP


    1 - struktura fajla; 2 - koli~estwo zapisej; 3 - data

    poslednej korrektirowki; 4 - perwi~noe ispolxzowanie bazy

    dannyh; 5 - pole imq tip {irina desqti~naq to~ka; 6 - itogo;

    7 - sozdajte indeksnyj fajl SHOPINDX; 8 - teperx pere~isli-

    te w porqdke indeksa; 9 - boby; 10 - syr; 11 - bulki hleba;

    12 - drewesnyj ugolx; 13 - salat-latuk; 14 - moloko; 15 -

    bumavnye tarelki; 16 -  plastikowye wilki; 17 - bif{teksy;

    18 - indeksirowanie dopuskaetsq komandoj FIND

    RECORD:  00007


    .DISPLAY

    00007  BLDU CHEESE             1     1.96


    .SKIP - 1

    RECORD:  00001


    .DISPLAY

    00001  BEANS                   5     0.75


    .NOTE RDCULAR USE KOMMAND DOEJ NOT INCLUDE INDEX FILE


    .USE SHOPLIST


    .LIST

    00001  BEANS                   5     0.75

    00002  BREND LONVES            2     1.06

    00003  T-BONE STOAK            4     4.33

    00004  PAPER PLATES            1     0.94

    00005  PLASTIC FORKS           5     0.42

    00006  LETTUCE                 2     0.53

    00007  BLEU CHEESE             1     1.96

    00008  MILK                    2     1.30

    00009  CHARCOAL                2     0.75


    .NOTE ALTERNATE FORM ORE USE COMMAND RECALLS INDEX FILE


    .USE SHOPLIST INDEX SHORINDX


    .LIST

    00001  BEANS                   5     0.75

    00007  BLEU CHEESE             1     1.96

    00002  BREAD                   2     1.06

    00009  CHARCOAL                2     0.75

    00006  LETTUCE                 2     0.53

    00008  MILK                    2     1.30

    00004  PAPER PLATES            1     0.94

    00005  PLASTIC FORKS           5     0.42

    00003  T-BONE STEAK            4     4.33




    I - zapisx; 2 - syr; 3 - boby; 4 - bulki hleba; 5 - bif{teksy;

    6 - bumavnye tarelki; 7 - plastikowye tarelki; 8 - salat-latuk;

    9 - moloko; 10 - drewesnyj ugolx; 11 - oby~naqkomanda USE ne

    wkl`~aet indeksnyj fajl; 12 - drugoj format komandy USE wyzywaet

    indeksnyj fajl

    .USE BOOKS

    .DISP STRU


    STRUCTURE FOR FILE:   BOOKS.DBF

    NUMBER OF RECORDS:    00010

    DATE OF LAST UPDATE:  10/18/81

    PRIMARY USE DATABASE

    FLD     NAME       TYPE WIDTH  DEC

    001   TITLE         C    025

    002   AUTHOR        C    015

    003   CAT:NUM       C    006

    004   ARR:DTE       C    008

    ** TOTAL **            00055


    .DIDEX ON AUTHOR - CAT:NUM TO BOOKS

    00010 RECORDS INDEXED


    .LIST

    00001 FLYING HIGH              BIRD, I. M.    IMB001 02/29/04

    00005 NESTING PROCEDURES       BIRD, I. M.    IMB001 09/25/06

    00002 DIVING                   FISH, U. R.     URF001 12/30/23

    00006 NURSING                  KNIGHT AND GALE KG001  06/04/44

    00010 VACATTIONING IN EUROPE   KNIGHT AND CALE KG002  06/24/42

    00004 101 WAYS TO TIE A KNOT   LYNCH, I.       IL001  04/01/00

    00003 HOW TO SURVIVE A CRASH   LYNCH, M.       ML001  01/01/30

    00007 EVEN PRIMES              SLADEK, L       LS001  12/01/73

    00009 .....................    ..............  LS002  04/24/73

    00006 THINKING BIG             TIM, TINY       TT001  05/07/42



    I - struktura fajla; 2 - koli~estwo zapisej;  3 - data poslednej

    korrektirowki; 4 - perwi~noe ispolxzowaniebazy dannyh; 5 - pole

     imq tip {irina desqti~naq to~ka; 6 - itogo; 7 - zapisej indeksi-

    rowano; 8 - leta`}ij wysoko; 9 - wlovennye procedury; 10 - nyrq-

    `}ij; 11 - uhaviwa`}ij; 12 - prowodq}ij otpusk w ewrope; 13 -

    sposoby zawqzywatx uzel; 14 - kak perevitx bankrotstwo; 15 -

    prostye ~isla; 16 - bolx{ie prostye ~isla; 17 - duma`}ij mnogo;

    18 - berd; 19 - fi{; 20 - knajt i gejl; 21 - lin~; 22 - sl|jdek;

    23 - tim mlad{ij;


    INPUT


    INPUT ["<cepo~ka simwolow>"] TO <peremennaq>


            |ta konstrukciq pozwolqet osu}estwitx wwod zna~enij

    wyravenij w peremennye pamqti i movet bytx ispolxzowana w

    komandnyh fajlah, kak sredstwo polxzowatelq dlq wwoda dannyh

    w prikaz komandnogo fajla. esli neobhodimo, peremennaq sozda-

    etsq i wyravenie zapominatsq w peremennoj. esli prisutstwuet

    <cepo~ka simwolow>, to ona wydaetsq na |kran w ka~estwe pod-

    skazywa`}ego soob}eniq, do togo kak budet osu}estwlen wwod.

            tip <peremennoj> opredelqetsq tipom dannyh, kotorye

    wwodqtsq. esli wwoditsq  cepo~ka simwolow w razdelitelqh,

    to <peremennaq> budet simwolxnogo tipa. esli wwoditsq ~islo-

    woe wyravenie, to <peremennaq> budet ~islowogo tipa. esli

    wwoditsq  t ili Y /dlq TRUE /istina / ili YES/ da//, to

    <permennaq> budet logi~eskoj peremennoj so zna~eniem TRUE;

    esli wwoditsq  F ili N /dlq FALSE/lovx/ili NOT / net//,to

    <peremennaq> budet logi~eskoj peremennoj so zna~eniem FALSE.

    dlq qwnogo opredeleniq tipa whodnyh dannyh movet bytx ispolx-

    zowana funkciq TYPE.

            dlq wydeleniq cepo~ki simwolow podskazywa`}ego soob}e-

    niq mogut bytx ispolxzowany znaki libo odino~nyh, libo dwojnyh

    kawy~ek, odnako, i na~ina`}ij, i zakan~iwa`}ijf znaki dolvny

    bytx odinakowymi.

            INPUT dolvna bytx ispolxzowana dlq wwoda tolxko ~islo-

    wyh i logi~eskih dannyh. komanda ACCEPT qwlqetsq bolee udobnym

    sposobom wwoda cepo~ek simwolow.


    primery:

    .INPUT TO Y

    :z

      z

    .INPUT TO Z

    :23/17.000 + Y

     4.352

    .INPUT 'podskazka polxzowatel` o wwode' to Q

    podskazka polxzowatel` o wwode: 12345

      12345


    .INPUT ' wwesti t esli wse w porqdke' to LOG

    wwesti t esli wse w porqdke: t

    .t.


    .INPUT "wwedite cepo~ku simwolow" to CHAR

    wwedite cepo~ku simwolow: cepo~ka simwolow dolvna

    bytx w kawy~kah

    cepo~ka simwolow dolvna bytx w kawy~kah


    .DISP MEMO

    Y        (N)       3

    Z        (N)       4.352

    Q        (N)       12345

    LOG      (L)      .T.

    CHAR     (C)       cepo~ka simwolow dolvna bytx w kawy~kah

    **TOTAL**           05 VARIABLES USED 00059 BYTES USED

    .INPUT 'wwedite l`boe logi~eskoe zna~enie' to LOG2

    wwedite l`boe logi~eskoe zna~enie: Y

    .t.


    1- ** wsego ** 05 peremennyh ispolxzowano 00059 bajt

    ispolxzowano.

    INSERT


    INSERT [BEFORE] [BLANK]


            |ta komanda pozwolqet osu}estwitx wstawku

    zapisej w seredinu bazy dannyh. komanda INSERT za odin

    raz movet bytx wstawlena tolxko odna zapisx .

            fraza BEFORE ispolxzuetsq dlq togo, ~toby

    wyzwatx wstawku pered zapisx`, kotoraq ukazana w teku-

    }ij moment, w protiwnom slu~ae, nowaq zapisx budet pome-

    }ena srazu posle teku}ej zapisi. esli fraza BLANK ne

    ispolxzuetsq, to polxzowatel` budut podskazywatxsq wwodi-

    mye zna~eniq, tak ve kak w komandah APPEND i CREATE.

    esli ukazana fraza BLANK, to wstawlqetsq pustaq zapisx.

            esli CAPPY ustanowlen /SET ON /, to infomaciq iz

    predydu}ej zapisi perenositsq w nowu` zapisx.

            wstawki w neindeksirowannye bazy dannyh bolx{ogo

    ob"ema zanima`t mnogo wremeni i dolvny izbegatxsq, esli w

    nih net neobhodimosti. wstawki w indeksirowannyj fajl,

    newavno kakogo razmera, qwlq`tsq identi~nymi dobawleniqm

    /APPEND/.

    primery:

            .USE  SHOPLIST


            .LIST

            00001   BEANS  0303 CAN      5           0.69

            00002   BREAD LOAVES         2           0.89

            00003   T- BONE STEAKS       4           3.59

            00004   LETTUCE              2           0.49

            00005   MILK (1/2 GAL)       2           1.19

            00006   CHARCOAL,50 BAGS     2           0.69



    1 - boby konserw.; 2 - bulki hleba; 3 - bif{teksy; 4 -

    salat-latuk; 5 - moloko 1/2 gallona; 6 - drewesnyj ugolx,

    5 me{kow

                     