

    .GOTO RECORD 4


    .INSERT


    RECORD  00005


    ITEM:        BLEU CHEESE

    NO:          1

    COSTJ:       1.79



    .LIST


    00001 BEANS 0303 CAN         5     0.69

    00002 BREAD LOAVES           2     0.89

    00003 T-BONE STEAK           4     3.59

    00004 LETTUCE                2     0.49

    00005 BLEU CHEESE            1     1.79

    00006 MILK (1/2 GAL)         2     1.19

    00007 CHARCOAL, 50 BAGS      2     0.69

    .GOTO RECORD 4


    .INSERT BEFORE


    RECORD 00004


    ITEM:       PAPER PLATES

    NO:         1

    COST:       .79


    .LIST

    00001 BEANS 0303 CAN         5     0.69

    00002 BREAD LOAVES           2     0.89

    00003 T-BONE STEAK           4     3.59

    00004 PAPER PLATES           1     0.79

    00005 LETTUCE                2     0.49

    00006 BLEU CHEESE            1     1.79

    00007 MILK (1/2 GAL)         2     1.19

    00008 CHARCOAL,50 BAGS       2     0.69



    1 - zapisx;2 - syr; 3 - boby konserw.; 4 - bulki hleba;

    5 - bif{teksy; 6 - salat-latuk; 7 - moloko (1/2 gallona);

    8 - drewesnyj ugolx, 5 me{kow; 9 - bumavnye tarelki

    .4


    .DISPLAY

    00004  PAPER PLATES            1     0.79


    .INSERT BLANK


    .LIST

    00001 BEANS 0303 CAN           5     0.69

    00002 BREAD LOAVES             2     0.89

    00003 T-BONE STEAK             4     3.59

    00004 PAPER PLATES             1     0.79

    00005

    00006 LETTUSE                  2     0.49

    00007 BLEU CHEESE              1     1.79

    00008 MILK (1/2 GAL)           2     1.19

    00009 CHARCOAL,50 BAGS         2     0.69

      .5


      .REPLACE ITEM WITH ' PLASTIC FORKS ' AND WITH 5 AND COST

    WITH .39


    00001 REPLACEMENT(S)


    .LIST

    00001 BEANS 0303 CAN           5     0.69

    00002 BREAD LOAVES             2     0.89

    00003 T-BONE STEAKS            4     3.59

    00004 PAPER PLATES             1     0.79

    00005 PLASTIK FORKS            5     0.39

    00006 LETTUCE                  0.    0.49

    00007 BLEU CHEESE              1     1.79

    00008 MILK (1/2 GAL)           2     1.19

    00009 CHARSOAL,50 BAGS         2     0.69



    1 - bumavnye tarelki; 2 - boby konserwn.; 3 - bulki hleba;

    4 - bif{tesy; 5 - salat-latuk; 6 - syr; 7 - moloko (12 gal-

    lona); 8 - drewesnyj ugolx,5 me{kow; 9 - plastikowye

    wilki; 10 - zamena

    JOIN


    JOIN TO <fajl> FOR <wyravenie> [FIELDS <spisok polej>]


            |TO odna iz naibolee mo}nyh komand w DBASE. ona

    pozwolqet ob"edinitx wmeste dwe bazy dannyh dlq formiro-

    waniq tretxej bazy dannyh, wsqkij raz kogda udowletworqet-

    sq nekotoryj kriterij.

            dwe ispolxzuemye bazy dannyh qwlq`tsq perwi~nym i

    wtori~nym fajlami w USe. sna~ala wydaetsq komanda SELECT

    PRIMARY. zatem wydaetsq komanda JOIN. potom JOIN ustanawli-

    waet DBASE w pozici` perwoj zapisi perwi~nogo fajla w USE

    i wy~islqet wyravenie ON dlq kavdoj zapisi wo wtori~nom

    fajle w  USE. kavdyj raz, kogda w rezulxtate wy~isleniq

    wyraveniq polu~aetsq TRUE, zapisx dobawlqetsq w nowu` bazu

    dannyh. kogda dostigaetsq konec wtori~nogo fAjla,perwi~nyj

    fajl prodwigaetsq na odnu zapisx, wtori~nyj fajl"perematy-

    waetsq" na na~alo i process prodolvaetsq do teh por, poka

    ne budet is~erpan perwi~nyj fajl w USE.

            esli fraza FIELDS opu}ena, to wyhodnaq baza dannyh

    budet zakl`~atx w sebe wse polq struktury perwi~nogo

    fajla w USE i stolxko polej wtori~nogo fajla w USE,

    skolxko wojdet do prewy{eniq ograni~eniq DBASE,rawnogo

    32-m polqm.

            esli fraza FIELDS ukazana,to te i tolxko te polq,

    kotorye nahodqtsq w spiske polej, budut pome}eny w wyhodnu`

    bazu dannyh.


            |ta komanda zanimaet interwal wremeni dlq swoego

    zawer{eniq, esli u~astwu`}ie w operacii bazy dannyh ime`t

    bolx{oj ob"em. i esli kriterij prisoedineniq qwlqetsq

    sli{kom {irokim, wyzywaq mnogo prisoedinenij na kavdu`

    zapisx perwi~nogo fajla, to imeetsq potoncialxnaq wozmovnostx

    dlq wyzowa JOIN, kotoru` DBASEf ne smovet zakon~itx. naprimer

    predpolovim, ~to perwi~nyj i wtori~nyj fajly w USE sodervat

    po 1000 zapisej kavdyj i ~to wyravenie wsegda qwlqetsq

    istinnym, togda komandoj JOIN dolvno bytx wywedeno w bazu

    dannyh million zapisej, razmer |toj bazy dannyh budet prewy-

    {atx maksimum, dopustimyj DBASE i rawnyj 65535 zapisqm.



    primer:


            .USE INVENTRY


            .DISPLAY STRUCTURE

            STRUCTURE FOR FILE:    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


            .LIST

            00001 TIME STITCH                        9.99 24776 1

            00002 WIDGET                             1.67 31415 18

            00003 GADGET,LARGE                      16.33 92653  7

            00004 TANK,SHERMAN                  134999.00 89793  3

            00005 SINK,KITCHEN                      34.72 21828 77

            00006 TROMBONES                        198.37 76767 76

            00007 RINGS,GOLDEN                     200.00 70296  5

            00008 09 COAL                           22.00 11528 16


    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 - sro~nyj po{iw;

    8 - bezdelu{ka; 9 - bezdelu{ka, bolx{aq; 10 - tank, {erman; 11 -

    rakowina, kuhonnaq; 12 - trambony; 13 - kolxca zolotye; 14 - ugolx

    .SELECT, RECONDARY


    .USE ORDERS


    .DISPLAY STRUCTURE

    STRUCTURE FOR FILE:   ORDERS.DBF

    NUMBER OF RECORDS:    00008

    DATE OF LAST UPDATE:  00/00/00

    PRIMARY USE DATABASE

    FLD       NAME      TYPE    WIDTH     DEC

    001     CUSTOMER     C       020

    002     PART:NO      C       005

    003     AMOUNT       N       005

    ** TOTAL **                00031


    .LIST

    00001   SWARTZ,JOE             31415    13

    00002   SWARTZ,JOE             76767    13

    00003   HARRIS,ARNOLD          11528    44

    00004   ADAMS,JEAN             89793    12

    00005   MACK,JAY               31415     3

    00006   TERRY,HANS             76767     5

    00007   JUAN,DON               21828     5

    00008   SALT,CLARA             70296     9


    .SELECT PRIMARY


    .JOIN TO ANNOTATE FOR PART: NO*S.PART: NO: ispolxzujte fajl opisi

    FIELD CUSTOMER, ITEM, AMOUNT, COST         predmetow, dlq  togo

    .USE ANNOTATE                              ~toby dobawitx nazwaniq

                                               k zakazam.

    .DISPLAAY STRUCTURE

    STRUCTURE FOR FILE:    ANNOTATE. DBF

    NUMBER OF RECORDS:     00008

    DATE OF LAST UPDATE:   00/00/00

    PRIMARY USE DATABASE

    FLD       NAME       TYPE    WIDTH    DEC

    001    CUSTOMER       C       020

    002    ITEM           C       020

    003    AMOUNT         N       005

    004    DAST            N      ...     002

    ** TOTAL **                 000..


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

    nej korrektirowki; 4 - perwi~noe ispolxzowanie bazy dannyh;

    5 - pole imq tip {irina desqti~naq to~ka; 6 - itogo; 7 - {warc,

    dvo; 8 - harris,arnolxd; 9 - adams,dvin; 10 - mak,dvej; 11 -

    torri,gans; 12 - dvu|n,don; 13 - solt,klara

    .LIST

    00001 SWARTZ,JOE               ........          13       1.67

    00002 MACK,JAY                 ........           3       1.67

    00003 ADAMS,JEAN               TANK,SHERMAN      12  134999.00

    00004 JUAN,DON                 SINK,KITCHEN       5      34.72

    00005 SWARTZ,JOE               TROMBONES         13     198.37

    00006 TERRAY,HANS              TROMBONES          5     198.37

    00007 SALT,CLARA               RINGS,GOLDEN       9     200.00

    00008 HARRIS,ARNOLD            09 COAL           44      22.00


    .USE INVENTRY


    1 - {warc,dvo; 2 - mak,dvej; 3 - adams,dvin; 4 - dvu|n,don;

    5 - terri,gans; 6 - solt,klara; 7 - harris,arnolxd; 8 - bez-

    delu{ka; 9 - tank,{erman; 10 - rakowina,kuhonnaq; 11 - trambo-

    ny; 12 - kolxca, zolotye; 13 - ugolx;


    naprimer,

    /soedinitx imena zakaz~ikow s nomenklaturnymi nomerami, s ne-

    polnym opisaniem predmetow,dlq togo ~toby udowletworitx zaka-

    zam, tak ~toby mogli bytx uwedomleny zakaz~iki./





    .JOIN TO BACKORDR FOR PART: NO=S.PART:NO.AND.ON:HAND<AMOUNT;

    FIELD CUSTOMER,ITEM


    .USE BACKORDR


    .LIST

    00001   ADAMS,JEAN             TANK,SHERMAN

    00002   SALT,CLARA             RINGS,GOLDEN

    00003   HARRIS,ARNOLD          09 COAL


    1 - adams,dvin; 2 - solt,klara; 3 - harris,arnolxd;4 - tank,

    {erman;5 - kolxca,zolotye; 6 - ugolx

    LIST


            LIST qwlqetsq to~no takoj ve komandoj, ~to i DISPLAY,

    za iskl`~eniem togo, ~to ustanowlennoj po umol~ani` oblastx`

    dejstwiq qwlq`tsq wse /ALL / zapisi  i ne delaetsq ovidaniq

    /WAIT/ dlq prodolvenyiq wyda~i posle grupp iz 15-ti zapisej.

    zametim, odnako, ~to komandy LIST STRUCTURE, LIST FILES i

    LIST MEMORY rabota`t to~no tak ve, kak komanda DISPLAY.



    LOGATE


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

    [CONTINUE]


            |ta komanda wyzywaet poisk zapisej bazy dannyh w

    USE - fajle na perwu` zapisx, polq dannyh kotoroj pozwolqt

    wyraveni` <wyravenie> bytx TRUE. kogda wyravenie udowletwo-

     reno, to wydaetsq na prosmotr sledu`}ee soob}enie:


    RECORD p


    komanda CONTINUE movet bytx ispolxzowana dlq prodolveniq

    poiska. mevdu LOGATE  i CONTINUE mogut bytx wydany drugie

    komandy DBASE. odnako, |to priwodit k ograni~eni` na koli-

    ~estwo simwolow w fraze FOR <wyravenie> do  128, wmesto

    254. smotrite CONTINUE.

            esli wyravenie ne movet bytx najdeno, to wydaetsq

    soob}enie END  OF FILE i baza dannyh ostaetsq w pozicii

    poslednej zapisi fajla. eslli w |toj komande ispolxzuetsq

    predlovenie NEXT/smotrite  oblastx dejstwiq, punkt 9.1/ i

    wyravenie ne  movet bytx najdeno w oblasti dejstwiq predlo-

    veniq NEXT, to wydaetsq soob}enie END OF LOGATE i baza

    dannyh ostaetsq w pozicii poslednej  skaniruemoj zapisi.

    zame~anie: LOGATE rabotaet bystree w fajle, kotoryj

    ispolxzuetsq /nahoditsq w USE/ bez indeksnogo fajla


    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   PAPER PLATES         1           0.79

            00005   PLASTIC FORKS        5           0.39

            00006   LETTUCE              2           0.49

            00007   BLEU CHEESE          1           1.79

            00008   MILK (1/2 GAL)       2           1.19

            00009   CHARCOAL,50 BAGS     2           0.69


            .LOGATE FOR COST>.70

            RECORD: 00002


            .CONTINUE

            RECORD: 00003


            .DISP ITEM

            T - BONE STEAKS

            .CONTINUE

            RECORD: 00004


            .CONTINUE

            RECORD: 00007


            .CONTINUE

            RECORD: 00008


            .CONTINUE

            END OF FILE


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

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

    8 - moloko (1/2 gallona); 9 - drewesnyj ugolx, 5 me{kow; 10 -

    zapisx; 11 - konec fajla

    LOOP


    LOOP

            |ta komanda ispolxzuetsq w tele DO WHILE dlq togo ~toby

    propustitx komandy, sledu`}ie za LooP, i tak ve pozwolqet osu}est-

    witx powtornu` ocenku i sledu`}ee wozmovnoe ispolnenie tela bloka

    DO WHILE. LOOP ispolxzuetsq dlq sokra}eniq ciklow Do WHILE, kotorye,

    esli qwlq`tsq bolx{imi, mogut rashodowatx wremq ili mogut sodervatx

    komandy, kotorye wremenami dolvny bytx propu}eny. LOOP dejstwuet wo

    mnogom kak komanda ENDDO, ona osu}estwlqet wozwrat w DO WHILE, KOTO-

    raq sopostawlqetsq ej na dannom urowne wlovennosti.

            ispolxzowanie ciklow w DO WHILE ne qwlqetsq horo{ej prakti-

    koj programmirowaniq i dolvno izbegatxsq. nivesledu`}ij primer byl

    sdelan wtoroj raz, wtoroj qwlqetsq priemnikom perwogo, no bez ispolx-

    zowaniq LOOP.


    primer:

    STORE 1 TO INDEX

    DO WHILE INDEX <10

       STORE INDEX +1 TO INDEX

       IF ITEM = '   '        wsqkij raz kogda ITEM rawnqetsq

         SKIP                 probelom, to propuskaetsq do sledu`-

         LOOP                 }ej zapisi i osu}estwlqetsq perehod

                              nazad w DO WHILE

       ENDIF

       DO PROCESS

       ENDDO

       2-oj primer

       STORE 1 TO INDEX

    DO WHILE INDEX < 10

    STORE INDEX + 1 TO INDEX

    IF ITEM =  '   '

       SKIP

    ELSE

       DO PROCESS

    ENDIF

    ENDDC



    MODIFY


    A. MODIFu STRUCTURE

    b. MODIFu COMMAND [<komandnyj fajl>]


            format a. |toj komandy pozwolqet polxzowatel` modificirowatx

    strukturu fajla DBASE. razre{a`tsq l`bye izmeneniq. polq mogut bytx

    dobawleny, uni~toveny ili mogut izmenitx swoi parametry / naprimer

    imq, tip, dlinu, koli~estwo desqti~nyh ~isel /.

    MODIFu rabotaet nad bazoj dannyh nahldq}ejsq w dannyj moment w USE.

    su}estwu`}aq struktura wydaetsq na |kran, izmeneniq dela`tsq

    prqmo na |krane tem ve samym sposobom, ~to i w slu~ae redaktiro-

    waniq na wsem |krane s dwumq iskl`~eniqmi: CTL-N wstawlqet pustu`

    stroku, gde by ne nahodilsq kursor,  CTL-T uni~tovaet stroku, w

    kotoroj nahoditsq kursor. drugie uprawlq`}ie klawi{i wedut sebq

    tak, kak opisywaetsq w punkte 9.

    zame~aniq: komanda MODIFu STRUCTURE uni~tovaet wse zapisi dannyh,

    kotorye byli w USE - fajle do komandy MODIFu. dlq togo ~toby modi-

    ficirowatx strukturu i sohranitx dannye, struktura sna~ala kopiru-

    etsq / COPY / w rabo~ij fajl, proizwodqtsq modifikacii i ,nakonec,

    starye dannye dobawlq`tsq /APPEND/ k rabo~emu fajlu

    perwona~alxnaq baza dannyh i raOl~ij fAjl moguut bytx

    pereimenowany  / RENAME/, esli |to neobhodimo dlq

    wosstanowleniq ih perwona~alxnyh imen. smotrite primer

    nive

            format b. |toj komandy pozwolqet minimalxnoe re-

    daktirowanie na wsem |krane komandnogo fajla /ili ~ego-libo

    drugogo/. esli <komandnyj fajl> opu}en, to polxzowatel`

    podskazywaetsq pro nego. esli fajl ne su}estwuet, to on

    sozdaetsq. posle togo, kak komandnyj fajl otredaktirowan,

    MODIFu COMMAND pereimenuet tip staroj kopii w . BAK i

    sohranit nowu` s tipom .CMD.

            w slu~ae komandy MODIFu COMMAND, funkcii redaktiro-

    waniq CTL-N i CTL-T rabota`t tak, kak opisany w predydu}em

    paragrafe. CTL-Q otmenqet wse izmeneniq w komandnom fajle,

    CTL-W zapisywaet izmeneniq nazad na disk i osu}estwlqet smenu

    imen, kotoraq byla opisana wy{e.

            ime`tsq nekotorye su}estwennye ograni~eniq w |tom

    formate komandy:1/ stroki mogut bytx dlinoj 77 simwolow ili

    menee /wkl`~aq wozwrat karetki/ perewod stroki/;2 / simwoly

    TAB preobrazu`tsq w odino~nye probely; 3/kursor movet bytx

    wozwra}en nazad w fajle li{x w predelah 4000 bajt; 4/net

    poiska i wozmovnosti pereme}eniq bloka, ~to imeetsq w

    nekotoryh tekstowyh redaktorah.

            simwoly uprawleniq kursorom pri redaktirowanii

    na wsem |kranne qwlq`tsq takimi ve, ~to i w komande MODIFu

    COMMAND, za iskl`~eniem sledu`}ih komand:

            CTL-N - wstawlqetsq pusiaq stroka, gde by ne nahodil-

    sq kursor;

            CTL-T - uuni~tovaetsq stroka, w kotoroj nahoditsq

    kursor, i nivnie stroki pereme}a`tsq;

            CTL-W - zapisywa`ts sdelannye izmeneniq w fajl na diske

    i osu}estwlqetsq wyhod iz komandy MODIFY COMMAND /CTL-O dlq

    SUPER BRAUN/;

            CTL-Q - otmenqet kakie-libo izmeneniq,sdelannye w komandnom

    fajle;

            CTL-R - prokru~iwaet na odnu storonu wniz;i

            CTL-C - prokru~iwaet na odnu storonu werh


    primer:

            .NOTE -- primer dlq togo kak modificirowatx strukturu bez

            .NOTE    poteri informacii w fajle

            .USE INVNTRY

            .COPY TO WORK

            .USE WORK

            .MODIFY STRUCTURE

            .APPEND FROM INVNTRY

            .DELETE FILE INVNTRY

            .USE

            .RENAME WORK TO INVNTRY



            NOTE


            A.NOTE l`bye simwoly

            b. * l`bye simwoly

                    |ta komanda pozwolqet pome}atx kommentariiw

    komandnyj fajl. w otli~ii ot komandy REMARK, sodervimoe |toj

    komandy ne wydaetsq w ka~estwe |ha na ustrojsto wywoda.

    primer:

            .NOTE -poslednqq modifikaciq: 4 i`lq 1976

            * -- poslednq modifikaciq naklikala denx stra{nogo suda




    RACK

            |ta komanda o~i}aet ot wseh zapisej,pome~ennyh na uni~to-

    venie komandoj DELETE. kak tolxko wydaetsq komanda PACK,to nelx-

    zq wosstanowitx uni~tovenie zapisi.

            esli fajl, kotoryj upakowywaetsq /PACKED/, indeksirowan

    i indeksirowannyj fajlnahoditxsq w ispolxzowanii /USE/, TO komanda

    PACK BUDET korrektirowatx indeksnyj fajl odnowremenno s korrekciej

    USE- fajla. dlq bolx{ih indeksirowaennyh fajlow, upakowka / PACK /

    delaetsq bez indeksnogo fajla i togda pereindeksaciq  osu-

    }estwlqetsq bystree.

            esli baza dannyh indeksirowana bolee ~em odnim indeksnym

    fajlom, to drugie indeksnye fajly dolvny bytx pereindeksirowany

    / INDEX / po tem kl`~am, poskolxku komanda PACK /po wsej weroqtnos-

    ti/ ws`du peremestit zapisi.

            alxternatiwnym PACK metodom qwlqetsq kopirowanie /COPY/

    starogo fajlaw w nowyj fajl. uni~tovenie zapisi /pome~ennye na

    uni~tovenie/ ne budut skopirowany. zatem staryj fajl moet bytx

    uni~toven /ili sohranen kak dublikat/, a nowyj fajl pereimenowan.

    primery:

            .USE B:SHOPSAVE


            .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


            .DELETE RECORD 8

            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


            .PACK

            PACK COMPLETE, 00008 RECORDS COPIED


            .LIST

            00001 BEANS                  2           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

            00009 CHARCOAL               2           0.75


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

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

    drewesnyj ugolx; 10 - uni~tovenie; 11 - upakowka zakon~ena,00008

    zapisej skopirowano

    PACK ne dolvna wsegda delatxsq, naprimer, predpolovim

    nekotorye zapisi dolvny bytx uni~toveny, no ih neobhodi-

    mo ostawitx w baze dannyh.|ti zapisi ne budut skopirowany

    /COPY/, dobawleny /APPEND/ ili otsortirowany /SORT/;

    odnako, oni budut pods~itany /COUNT/. |to stanowitxsq

    wavnym dlq togo, ~toby uznatx qwlqetsq  li obrabatywaemaq

    zapisx uni~tovaemoj ili net. sledu`}ij primer, qwlqetsq

    fragmentom komandnogo fajla, w kotorom proishodit propusk

    zapisi, kotoraq qwlqetsq uni~tovaemoj, i prodolvaet obrabotku

    so sledu`}ej zapisx`.

    DO WHILE. NOT. FOR

       LOCATE FOR NATURE = "TLM"

       IF .NOT. *


       .

       komandy

       .

     ENDIF

     CONTINUE

    ENDDO


    GUIT


    GUIT [TO<spisok komandnyh fajlow>]


         |ta komanda zakrywaet wse fajly bazy dannyh,komandnye

    fajly i wariantnye fajly i wozwra}aet uprawlenie operacion-

    noj sisteme. wydaetsq na prosmotr soob}enie *** END RUN DBASE***

         esli  wkl`~ena fraza to, to wse programmy w spiske <spisok

    komandnyh fajlow> budut posledowatelxno ispolneny sistemoj CP/M.

    |to swojstwo pozwolqet wam wyjti iz DBASE i priwqzatxsq

    k drugim kuskam programmnogo obespe~eniq.

            net ograni~eniq na koli~estwo programm ili komand

    sistemy  CP/M, kotorye mogut bytx ispolneny, poka ne

    polu~eno ograni~enie w 254 simwola dlq kakoj-libo komandy.

    powtorno budet osu}estwlen whod w DBASE po okon~ani` cepo~ki

    komand. odnako, |to ne trebuetsq; CP/M budet dano uprawlenie

    kogda cepo~ka komand zakan~iwaet ispolnenie.


    primer:


    .QUIT TO 'DIR B:','PIP PRN:=ALTERNAT.TXT','DBASE CMDFILE'


    w |tom primere,osu}estwlqetsq wyhod iz DBASE, wydaetsq oglawle-

    nie diska s diskowoda w, zatem wyzywaetsq PIP dlq kopirowaniq

    fajla na postro~noe pe~ata`}ee ustrojstwo i osu}estwlqetsq powtor-

    nyj whod w DBASE s komandnym fajlom /SMDFILE.SMD/, kotoryj nepo-

    sredstwenno prinimaet uprawlenie.



    READ


    READ


            |ta komanda zapuskaet revim redaktirowaniq na wsem

    |krane i/ili wwod dannyh w peremennye, identificirowannye i

    wydannye na prosmotr komandoj "e" s frazoj GET. kursor movet

    bytx pereme}en w l`bu` iz peremennyh GET- frazy. izmeneniq,

    sdelannye w |tih peremennyh na |krane, wwodqtsq w sootwetstwu-

    `}ie polq bazy dannyh ili peremennye pamqti.

            esli  wydawalasx komanda SET FORMAT TO <fajl formata>,

    to READ zastawlqet ispolnqtxsq wse komandy "e" w fajle formata,

    takim obrazom formiruq |kran, pozwolqq redaktirowanie wseh peremen-

    nyh frazy GET. zametim, ~to |tot metod qwlqetsq podwqzawyemoj

    podstanowkoj dlq komandy EDIT, w slu~ae interaktiwnogo revima.


            w slu~ae revima SET FORMAT TO SCREEN, dlq o~istki

    |krana ispolxzuetsq komanda ERASE. zatem mogut bytx wydany

    serii komand "e" dlq formatirowaniq |krana. zatem komanda

    READ daetsq, ~to pozwolqet redaktirowanie.

            esli posle komandy READ wyda`tsq wtoraq ili posledu`}ie

    serii komand "e", to READ pome}aet w perwu` peremennu` frazy

    GET. kotoraq sleduet za poslednim READ. w |tom sposobe, format

    |krana i redaktiruemye specifi~eskie peremennye mogut bytx

    bazirowany na re{eniqh, osu}estwlennyh polxzowatelem w otwet

    na pred{estwu`}ie komandy READ.

            peremennye, dlq togo ~toby bytx ispolxzowannymi s

    komandami "e" i redaktiruemymi,putem ispolxzowaniq komandy

    READ, dolvny bytx libo w USE-fajle, w ka~estwe imen polej,

    libo dolvny bytx premennymi pamqti tipa cepo~ki simwolow.

    peremennye pamqti dolvny bytx predwaritelxno opredelennymi,

    do togo kak wydana komanda "E". esli neobhodimo, zapominaetsq

    stolxko probelow, skolxko wy hotite dlq maksimalxnoj dliny

    peremennoj pamqti, dlq togo ~toby inicializirowatx peremennu`

    pamqti /naprimer, STORE '   ' to MEMVAR/.

            smotrite punkt 8 dlq polu~eniq informacii ob instrukciqh

    uprawleniq kursorom i wwoda dannyh.

            dolvna bytx w dejstwii komanda SET SCREEN ON /|to

    qwlqetsq uslowiem, ustanowlennym po umol~ani`, esli pri

    ustanowke DBASE II byli razre{eny operacii na wsem |krane/.

    primer:


    .

    .

    .

    STORE '  ' TO PTuPE

    STORE '            ' TO ACCT

    ERASE

    E5,O SAY 'wwedite s pri nali~noj oplate'

    e6,o SAY '      ili I pri otsro~ennoj oplate'

    e8,10 PTuPE

    READ

    IF PTuPE='D'

    E 10,10 SAY 'wwedite nomer s~eta' GET ACCT PICTURE'999-99-9999'

       READ

    ENDIF

    .

    .

    .

    w |tom fragmente komandnogo fajla o~i}aetsq |kran i wyda`tsq

    perwye  dwe komandy "e". kursor budet mevdu dwumq

    stolbcami, kotorye otme~a`t pozici` |krana dlq pere-

    mennoj PTYPE. poskolxku perwaq komanda STORE ustanawliwaet

    razmer zna~eniq peremennoj PTYPE w odin simwol, to l`boj

    wwod, proizwedennyj polxzowatelem, zapolnit PTYPE i osu}est-

    wit wyhod iz perwoj komandy READ.

            esli operatorom DBASE bylo wwedeno "D", TO budet

    osu}estwlena komanda "e", kotoraq zapra{iwaet nomer s~eta

    zametim, ~to w komandk STORE zna~enie peremennoj ACCT bylo

    opredeleno dostato~no dlinnym, dlq togo ~toby wkl`~itx ~erto~ki,

    kotorye wwodqtsq wo fraze RICTURE komandy "e".

    USE CHECKS

    SET FORMAT TO SCREEN

    ACCEPT " revim " TO CHOICE

    IF CHOICE&'AA'

      ERASE

      DO WHILE NUMBER # O

        APPEND BLANK

        E 5.0 SAY " wwedite sledu}ij nomer";

              GET NUMBER  PICTURE '99999'

        E 6.0 SAY "wwedite polu~atelq";

              GET RECIPIENT PICTURE 'XXXXXXXXXXXXXXXXXXXXXXXXXXX'

        E 7.0 SAY "wwedite summu"

              GET AMOUNT PICTURE '9999999999'

        E 8.5 SAY "ona uve prosro~ena?"

              GET NOME

        e 8.30 SAY "wy uve wypla~iwaete?"

              GET OUTGOING


        READ

      ENDDO

     ENDIF


    w poslednem primere, fajl byl ispolxzowan i neposredstwenno iz-

    menen, wybor, osu}estwlqemyj operatorom, otwe~aet na wopros,do-

    bawlqtx ili net nowye zapisi w bazu dannyh.


            dlq polu~eniq bolee podrobnoj informacii, obratitesx k

    komande "e".

    RECALL


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

            |ta komanda udalqet otmetku na uni~tovenie iz zapisej, ko-

    torye byli pome~eny komandoj DELETE.


    primery:

            .USE DUPE3


            .LIST

            00001 NEUMAN,ALFRED E.                   1357

            00002 RODGERS, ROY                       2468

            00003 *CASSIDY,BUTCH                     3344

            00004 *CHANG,LEE                         6743

            00005 *POST,WILEY                        1011

            00006 LANCASTER,WILLIAM J                6623


            .3


    .DELETE NEXT

            00003 DELETION (S)


            .LIST

            00001 NEUMAN,ALFRED E.                   1357

            00002 RODGERS,ROY                        2468

            00003 CASSIDY,BUTCH                     3344

            00004 CHANG,LEE                         6743

            00005 POST,WILEY                        1011

            00006 LANCASTER,WILLIAM J                6623


            .RECALL RECORD

            00001 RECALL (S)


            .LIST

            00001 NEUMAN,ALFRED E.                   1357

            00002 RODGERS,ROY                        2468

            00003 *CASSIDY,BUTCH                     3344

            00004 CHANG,LEE                          6743

            00005 *POST,WILEY                        1011

            00006 LANCASTER,WILLIAM J                6623


            .RECALL ALL

            00002 RECALL(S)


            1 - nx`men,alxfred; 2 - rodvers,roj; 3 - kessidi,bat~;

    4 - ~eng,li; 5 - post,uali; 6 -lankaster,uilxam dv; 7 - uni~tovenie;

    8 - wosstanowlnie;

    .LIST

    00001 NEUMAN,ALFRED E.               1357

    00002 RODGERS,ROY                    2466

    00003 CASSIDY,BUTCH                  3344

    00004 CHANG,LEE                      6743

    00005 POST,WILEY                     1011

    00006 LANCASTER,WILLIAM J            6623


    1 - nx`men,alxfred; 2 - rodvers,roj; 3 - kessidi,wat~; 4 - ~eng,

    li; 5 - post,uajli; 6 - lankaster,uilxqm dv;

    RELEASE


    RELEASE [<spisok permennyh>]

            [ALL]


            |ta komanda oswobovdaet wse ili wybrannye peremennye

    pamqti i delaet prostranstwo, kotoroe oni zanimali, dostupnym

    dlq nowyh peremennyh pamqti. esli ukazywaetsq ALL, to wse pere-

    mennye pamqti budut uni~toveny.



    REMARK


    REMARK l`bye simwoly


            |ta komanda pozwolqet wydawatx na prosmotr l`bye simwoly.

    sodervimoe |toj komandy wydaetsq na ustrojstwo wywoda, kogda

    wstre~aetsq |ta komanda.


    primery:


    .REMARK ****** test komandy REMARK ******

    ****** test komandy REMARK ******



    RENAME


    RENAME <perwona~alxnoe imq fajla> TO <nowoe imq fajla>


            |ta komanda pozwolqet izmenitx imq fajla w oglawlenii

    diska sistemy CP/M. esli ne zadan tip fajla /do treh simwolow,

    sledu`}ih za imenem fajla/, to DBASE predpolagaet, ~to ispolxzo-

    wano imq bazy dannyh i priswaiwaet nazwannym fajlam tip .DBF.

    dlq bolee detalxnogo ponimaniq ispolxzowaniq sistemoj DBASE

    tipow fajlow, smotrite punkt 4.


    primer:


    .RENAME INVENMAC TO INVENOLD

    .RENAME D:REPORT. FRM TO REPORT.BAK

    .RENAME TYPELESS. TO TYPED.TUP



    REPLACE


    REPLACE [<oblastx dejstwiq>] <pole> WITH <wyravenie> [,<pole 2>

    WITH <wyr.>] i t.p.

            [FOR<wyrav>]


            |ta komanda ispolxzuetsq dlq zameny sodervimogo,ukazannyh

    polej dannyh fajla w USE na nekotorye nowye dannye. |ta komanda

    protiwopostawlqetsq komande STORE w tom, ~to komanda REPLACE izme-

    nqet li{x peremennye polej, w to wremq kak komanda STORE izmenqet

    li{x peremennye pamqti.

            esli oblastx destwiq ne predostawlena w komande, to

    REPLACE dejstwuet tolxko na teku}u` zapisx.

            esli REPLACE delaetsq po indeksnomu kl`~u i indeks

    nahoditsq w USE, to indeksnyj fajl budet skorrektirowan putem

    uni~toveniq starogo whoda indeksa i powtornogo wwoda nowogo

    whoda na swoe mesto. neispolxzuemye /ne nahodq}iesq w USE/

    indeksnye fajly ne budut zadejstwowany. kogda REPLACE delaetsq

    po indeksnomu kl`~u, to izmenennye zapisi "smenqt swoi mesta" w

    fajle, nowaq "sledu`}aq zapisx" ne budet toj ve samoj, ~to i

    staraq "sledu`}aq zapisx ". kl`~ ne dolven zamenqtxsq s NEXT p

    w ka~estwe oblasti dejstwiq.

    primery:


    .USE SHOPLIST

    .NOTE inflqciq wyzywaet uweli~enie ceny na 10%

    .LIST

    00001  BEANS  0303 CAN         5     0.69

    00002  BREAD LOAVES            2     0.89

    00003  T-BONE STEAK            4     3.59

    00004  PAPER PLATES            1     0.79

    00005  PLASTIC FORKS           5     0.39

    00006  LETTUCE                 2     0.49

    00007  BLEU CHEESE             1     1.79

    00008  MILK (1/2 GAL)          2     1.19

    00009  CHARCOAL, 50 BAGS       2     0.69


    .REPLACE ALL COST WITH COST*1.1

    00009 REPLACEMENT (S)


    .LIST

    00001  BEANS  0303 CAN         5     0.75

    00002  BREAD LOAVES            2     0.97

    00003  T-BONE STEAKS           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 (1/2 GAL)          2     1.30

    00009  CHARCOAL, 50 BAGS       2     0.75


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

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

    7 - syr; 8 - moloko (1/2 gallona); 9 - drewesnyj ugolx,5 me{--

    kow; 10 - zamena

    .USE B:SHOPLIST


    .COPY TO B:SHOPWORK

    00009 RECORDS COPIED


    .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


    .GOTO TOP


    .REPLACE NEXT 6 COST WIHT  COST * 1.1 FOR COST >. 75

    00003  REPLACEMENT (S)


    .LIST

    00001  BEANS                   5     0.75

    00002  BREAD LOAVES            2     1.06

    00003  T-BONE                  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



    .USE CHECKS


    .DISP STRU


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

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

    syr; 9 - moloko; 10 - drewesnyj ugolx; 11 - zamena

    STRUCTURE FOR FILE:  CHECKS.DBF

    NUMBER OF RECORDS:   00016

    DATE OF LAST UPDATE: 10/16/81

    PRIMARY USE DATABASE

    FLD       NAME      TYPE WIDTH   DEC

    001     NUMBER       N    005

    002     RECIPIENT    C    020

    003     AMOUNT       N    010    002

    004     NOME         L    001

    005     OUTGOING     L    001

    ** TOTAL **             00038


    .LIST


    00001   1 PHONE COMPANY              104.89 .F. .T.

    00002   2 GAS COMPANY                  4.15 .F. .T.

    00003   3 ELECTRICITY                250.30 .F. .T.

    00004   4 GROCERY STORE             1034.45 .F. .T.

    00005 134 ME, SALARY                 561.77 .T. .F.

    00006   6 BANK (SC)                    4.00 .T. .T.

    00007   7 DOCTOR DOOLITTLE           100.00 .T. .T.

    00008   8 PIRATES                    100.00 .F. .T.

    00009   9 CAR REPAIR MAN             500.01 .F. .T.

    00010  10 ME                         561.77 .T. .F.

    00011  11 TUPERWARE                   50.02 .F. .T.

    00012  12 ME                         561.02 .T. .F.

    00013  13 ME                         750.03 .T. .F.

    00014 234 PETER RABBIT                14.00 .F. .T.

    00015 237 GOLDEN GOOSE               650.00 .F. .T.

    00016  30 ME                         561.77 .T. .F.


    .11


    .REPLACE NOME WITH F

    00001 REPLACEMENT (S)


    .DISPLAY

    00011           1 TUPERWARE           50.02 .F. .T.


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

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

    tip imq {irina desqti~naq to~ka; 6 - itogo; 7 - telefonnaq kompa-

    niq; 8 - gazowaq kompaniq; 9 - |lektri~estwo; 10 - produktowyj

    magazin; 11 - mne, valowanie; bank; 13 - doktor dulitl; 14 - wo-

    diteli ~astnyh awtobusow; 15 - awtoslesarx; 16 - mne; 17 - tulup;

    18 - piter r|bbit; 19 - isto~nik oboga}eniq; 20 - zamena


                                 