Stručný popis jazyka FoxPro
<< Klikni pro zobrazení obsahu >> Navigace: Společné prvky Evidenčních modulů > Seznam funkcí FoxPro a systému BAKALÁŘI > Stručný popis jazyka FoxPro |
V této části uvedeme popis základních příkazů jazyka FoxPro. Tento popis může sloužit uživatelům, kteří jsou seznámeni s programováním v jiném jazyce a chtějí něco “doprogramovat” v systému Bakaláři.
Poznámka 1: Příkazová slova jazyka FoxPro lze zkracovat na čtyři znaky. Např. místo StrTran() můžeme proto psát StrT(), StrTr().
Poznámka 2: U položek tabulky můžeme uvádět tzv. alias - např. zaci.prijmeni, ucitele.zkratka. U paměťových proměnných můžeme uvádět m. - např. m.prijmeni, m.zkratka.
standardní cyklus WHILE do while <podmínka> ... příkazy enddo Příklad: m.retezPrijmeni=[] set order to trida_c_v locate for trida=[4.A] do while trida=[4.A] m.retezPrijmeni=m.retezPrijmeni+[,]+trim(prijmeni) enddo m.retezPrijmeni=subs(m.retezPrijmeni,2)
cyklus SCAN pro průchod záznamů tabulky scan [for <podmínka>] [while <podmínka>] ... příkazy endscan Příklad (ekvivalentní s předchozím): m.retezPrijmeni=[] set order to trida_c_v scan for trida=[4.A] m.retezPrijmeni=m.retezPrijmeni+[,]+trim(prijmeni) endscan m.retezPrijmeni=subs(m.retezPrijmeni,2)
skok v cyklu EXIT, LOOP exit - vyskočení z cyklu, na první příkaz za enddo (resp. endscan) loop - skok na první řádek cyklu s podmínkou do while (resp. scan)
|
příkaz IF if <podmínka> ... příkazy else ... příkazy endif Příklad: m.retezPce=[] m.retezJine=[] scan if bydliste=[Pardubice] m.retezPce=m.retezPce+[,]+trim(prijmeni) else m.retezJine=m.retezJine+[,]+trim(prijmeni) endif endscan
příkaz CASE do case case <podmínka> ... příkazy case <podmínka1> ... příkazy case <podmínka2> ... příkazy ..... otherwise ... příkazy endcase Příklad: m.retezPce=[] m.retezHK=[] m.retezJine=[] scan do case case bydliste=[Pardubice] m.retezPce=m.retezPce+[,]+trim(prijmeni) case bydliste=[Hradec Králové] m.retezHK=m.retezHK+[,]+trim(prijmeni) other m.retezJine=m.retezJine+[,]+trim(prijmeni) endcase endscan
|
příkaz LOCATE (vyhledání záznamu) locate for <podmínka> continue Příklad: m.retezPrijmeni=[] locate for trida=[4.A] do while found() m.retezPrijmeni=m.retezPrijmeni+[,]+trim(prijmeni) continue enddo
příkaz REPLACE (nahrazení položky tabulky) replace [all] <položka> with <výraz> [for <podmínka>] Příklad: replace all bydliste with strtran(bydliste,[Ohrazenická],[Jana Nerudy]) for bydliste=[Pardubice]
příkaz SELECT (výběr aktuální pracovní oblasti, tabulky) select <pracovní oblast> Příklad: select zaci replace all bydliste with strtran(bydliste,[Ohrazenická],[Jana Nerudy]) for bydliste=[Pardubice] select ucitele replace all bydliste with strtran(bydliste,[Ohrazenická],[Jana Nerudy]) for bydliste=[Pardubice] |