Этим Вы окажете большую помощь науке и медицине. См. подробнее: http://solidstate.karelia.ru/~yura/pyldin/yura/computing.htm |
--------------------------------------------------------------- 1, 118 !, Run --------------------------------------------------------------- Служи за изпълнение на команди на операционната система. Остатъка от командния ред след знака "!" се предава на UniDOS за изпълнение. Съдържанието му следва да бъде само някоя от вътрешните команди на UniDOS, в противен случай не се гарантира правилното изпълнение на командата и възвръщането на управлението в среда UniBASE. --------------------------------------------------------------- 2, 3 ? { exp } ?? { exp } --------------------------------------------------------------- Командата ?/?? изчислява и извежда стойността на израз. Записана с един въпросителен знак, командата предизвиква преминаване на нов ред преди извеждането на съответните данни. Двойният въпросителен знак извежда данните от текущата позиция на курсора, или на принтера. Когато командата е записана само с въпросителен знак, без параметри, UNIBASE пропуска един празен ред. --------------------------------------------------------------- 4 Menu 4 138 5 6 7 Say .. Get Clear Box To Prompt --------------------------------------------------------------- 138 @ coord [ Say exp ] [ Get var ] --------------------------------------------------------------- Опцията Say се използува за извеждане на константна информация. Get се използува за въвеждане на променливи данни , които могат да бъдат или поле от активен базов файл,или работна променлива. Тази част от командата трябва да бъде активирана с командите Read или Append. UniBASE позволява максимално 32 команди @...Get преди въвеждането на командата Clear Gets. --------------------------------------------------------------- 5 @ coord Clear [ To coord ] --------------------------------------------------------------- Тази команда изтрива екрана в правоъгълника определен от указаните координати. Ако втората двойка координати не е зададена, подразбира се изчистване до края на екрана. --------------------------------------------------------------- 6 @ coord Box To coord [ , expN ] --------------------------------------------------------------- Командата се използува за чертаене на рамка по правоъгълника зададен с двете двойки координати. С допълнително зададено число от 0 до 4 се определя вида на рамката. Подразбира се стойност 1. 0 : с интервал 1 : с единична линия 2 : с двойна линия 3, 4, 5 : с други символи. --------------------------------------------------------------- 7 @ coord Prompt expC --------------------------------------------------------------- Тази команда задава елемент от меню. Серия такива команди създават потребителско меню, което се активира с командата Menu. --------------------------------------------------------------- 8 Accept [ ExpC ] To var --------------------------------------------------------------- Командата Accept служи за въвеждане на стойност на променлива с предварително съобщение. Въведените данни се запаметяват като символен низ, без да е необходимо използуването на ограничители. Въвеждането на данни се завършва с <Return>. --------------------------------------------------------------- 9 Menu 2 140 10 Blank From file --------------------------------------------------------------- 140 Append [ Blank ] --------------------------------------------------------------- Ако е указано Blank се добавя един празен запис на края на файла - всичките му полета съдържат интервали. В противен случай се преминава към интерактивно въвеждане на записи и добавянето им към края на файла. Ако се използва форматен файл то той се изпълнява еднократно непосредствено преди изпълнението на командата, и се въвежда такава информация, каквато е указано във форматния файл с командите @ .. Get. При липса на форматен файл се въвеждат в стандартен формат на екрана всичките полета на записа от текущата база данни, или при включена маска с флага Fields - само тези полета, които са зададени с маската. Всички индексни файлове, активни по време на изпълнение на командата Append ще бъдат обновени, за да бъдат отразени новите записи. --------------------------------------------------------------- 10 Append From filename [ Fields { field } ] [ For cond ] --------------------------------------------------------------- Копира записи от определен файл-източник в активния файл от базата данни. Записите винаги се добавят към края на работния файл. Отчита се и маската по полета, освен ако не е зададена частта Fields { field }. Ако е зададено условие с For ще бъдат добавени само записите, за които условието е изпълнено. --------------------------------------------------------------- 11 Average scope { field } [ To { var } ] --------------------------------------------------------------- Изчислява аритметичното средно на изрази, включващи числови полета от група, или от всички записи на активен базов файл. --------------------------------------------------------------- 12 Cancel --------------------------------------------------------------- Прекратява изпълнението на всички командни файлове, включително прекъснатите със Suspend. --------------------------------------------------------------- 14 Menu 5 120 15 16 17 18 Clear All Clear (Screen) Clear Fields Clear Gets Clear Memory --------------------------------------------------------------- 120 Clear All --------------------------------------------------------------- Командата затваря всички отворени файлове от базата данни, освобождава всички работни променливи и избира работна област 1. --------------------------------------------------------------- 16 Clear Fields Set Fields To All --------------------------------------------------------------- Тези две команди имат почти еднакво действие. И двете команди премахват маската от полета над текущата таблица, но първата изключва флага Fields, а втората го включва. --------------------------------------------------------------- 15 Clear --------------------------------------------------------------- Изчиства екрана. Курсора остава в горния ляв ъгъл. --------------------------------------------------------------- 17 Clear Gets --------------------------------------------------------------- Командата Clear Gets освобождава всички променливи Get, установени след последното изпълнение на командите Clear All, Clear Gets и Read. Clear Gets не премахва работни променливи. --------------------------------------------------------------- 18 Clear Memory Release All --------------------------------------------------------------- Clear Memory освобождава всички работни променливи. Еквивалентна е на Release All при работа в директен режим . Ако тези команди се изпълняват от програма, разликата е следната: Clear Memory освобождава всички работни променливи, ; Release All освобождава само работни променливи в текущата програма (private). --------------------------------------------------------------- 19 Menu 6 121 20 21 22 223 24 Close Alternate Close Databases Close Format Close Index Close Procedure Close All --------------------------------------------------------------- 121 Close Alternate --------------------------------------------------------------- Прекъсва алтернативния текстов изход и затваря файла. --------------------------------------------------------------- 20 Close Databases --------------------------------------------------------------- Затваря базите данни и асоциираните им индексни и форматни файлове от всички работни области. Избира работна област номер 1 за текуща. --------------------------------------------------------------- 21 Close Format --------------------------------------------------------------- Прекратява използването на форматен файл към текущата база данни. В много от командите за работа с базите данни особена роля играе флагът Fields и следващите две команди: --------------------------------------------------------------- 22 Close Index --------------------------------------------------------------- Затваря достъпа до всички индексни файлове на текущата база данни. При последвали промени във файла индексите няма да бъдат обновявани. --------------------------------------------------------------- 23 Close Procedure --------------------------------------------------------------- Прекратява достъпа до процедурния файл. Нормализира действието на командата Do filename. --------------------------------------------------------------- 24 Close All --------------------------------------------------------------- Затваря всички файлове от всички типове - бази данни, форматни и индексни файлове, процедурният файл и алтернативния текстов изход. --------------------------------------------------------------- 26 Menu 2 122 27 Copy (Records) Copy Structure --------------------------------------------------------------- 122 Copy scope To filename [ Fields { field } ] --------------------------------------------------------------- Копира тези записи от работния файл, които са зададени с обхвата в база данни с указаното име. Структурата на новосъздадения файл се определя от частта Fields на командата, или ако тя не е зададена - от маската зададена с командата Set Fields, а ако флага Fields е изключен се копира структурата на работния файл. --------------------------------------------------------------- 27 Copy Structure To filename [ Fields { field } ] --------------------------------------------------------------- Създава празна база данни. Структурата на новосъздадения файл се определя от частта Fields на командата, или ако тя не е зададена - от маската зададена с командата Set Fields, а ако флага Fields е изключен се копира структурата на работния файл. --------------------------------------------------------------- 28 Count scope --------------------------------------------------------------- Извежда броя на записите от зададения обхват в активния базов файл, който отговаря на указано условие. --------------------------------------------------------------- 29 Delete scope --------------------------------------------------------------- Маркира за изтриване (премахване) всички записи от работната база данни попаднали в указания обхват. В базата данни записите се маркират за изтриване със звезда /*/ в първата позиция на записа. В тази команда подразбран обхват е само текущия запис, така че ако не е въведен обхват действието на командата се извършва само върху текущия запис. --------------------------------------------------------------- 30 Menu 4 56 31 32 33 Display (Records) Display Memory Display Status Display Structure --------------------------------------------------------------- 34 Menu 3 116 35 36 Do While Do Case Do (subprogram call) --------------------------------------------------------------- 36 Do name | filename [ With { var } ] --------------------------------------------------------------- Командата предизвиква изпълнението на един програмен файл или процедура в UniBASE. Когато извиканата с командата Do подпрограма завърши, управлението се връща на викащата програма, или на клавиатурата. С клаузата With може да се зададат входни параметри за подпрограмата. Списъка на параметри може да съдържа произволни изрази на UniBASE. --------------------------------------------------------------- 37 Edit scope { field } --------------------------------------------------------------- Команда за интерактивна промяна съдържанието на данни в активния базов файл. На тази команда влияние оказват предварително зададените форматен файл и маската по полета, съгласно направените по-рано пояснения. --------------------------------------------------------------- 38 Eject --------------------------------------------------------------- Предизвиква преминаване на принтера на нова страница. --------------------------------------------------------------- 40 Menu 4 39 35 116 116 End If End Case End Do End While --------------------------------------------------------------- 44 Export scope To filename [ Fields { field } ] [ Delimited With expC ] --------------------------------------------------------------- Създава текстов файл, в който се записват всички записи от текущата база данни попаднали в указания обхват. Записват се указаните полета или маската зададена с командата Set Fields, разделени с expC. Ако не е указан разделител с частта Delimited With полетата се записват в текста непосредствено едно след друго. Всеки запис се записва на отделен ред. --------------------------------------------------------------- 46 Find --------------------------------------------------------------- Командата търси първия запис в индексния файл, чийто ключ съвпада с определен символен низ. Провежда много бързо търсене на записи по ключ. Ако не бъде намерен запис с ключ, съответствуващ на специфицирания символен низ, на екрана ще бъде изведено съобщението: Not Found. --------------------------------------------------------------- 40 Menu 3 123 48 49 Go Top Go Bottom Go Exp --------------------------------------------------------------- 123 Go Top --------------------------------------------------------------- Премества файловия показалец за текущ запис на първия запис във файла. Ако файлът е индексиран за първи запис се смята първият логически, т.е. записа с най-малък ключ. --------------------------------------------------------------- 48 Go Bottom --------------------------------------------------------------- Премества файловия показалец за текущ запис на последния запис във файла. Ако файлът е индексиран за последен запис се смята последен логически, т.е. записа с най-голям ключ. --------------------------------------------------------------- 49 Go expN --------------------------------------------------------------- Премества файловия показалец на определен от expN запис в активната база данни. --------------------------------------------------------------- 39, 50 If cond [ Then ] .. && команди [ Else .. ] && команди End If --------------------------------------------------------------- Това е програмна команда за условно изпълнение на команди. Тя трябва да завършва с End If. Всички команди след If се изпълняват само ако условието cond е изпълнено. Ако условието не е изпълнено, тези команди се пропускат, и ако е зададена клаузата Else се изпълняват командите след нея. Разрешено е вместването една в друга на няколко конструкции If. --------------------------------------------------------------- 51 Import From filename [ Fields { field } ] [ For cond ] [ Delimited With expC ] --------------------------------------------------------------- Работи подобно на командата Append From, но файлът източник е стандартен текстов файл. Ако е зададена частта Delimited With се счита, че полетата в текста са разделени с разделител какъвто е резултата от expC. ------------------------------------------------------------- 52 Index On field To filename --------------------------------------------------------------- Index създава файл, в който ключово поле от базата данни е подредено по азбучен, хронологичен или числов ред. Индексният файл съдържа ключово поле и кореспондиращия номер за всеки запис от базата данни. Индексирането е винаги във възходящ ред. Записите в базовия файл не се пренареждат физически при операциите с командата Index. Максималната дължина на един индексен ключ е 15 символа. Ако е включен флага Unique и няколко записа имат едно и също значение на ключовото поле, в индекса се включва само първия намерен запис. --------------------------------------------------------------- 53 Input [ expC ] [ To ] var --------------------------------------------------------------- Командата Input се използва в програмите за извеждане на съобщение, изискващо от потребителя да въведе данни от клавиатурата. Въвеждането на данни завършва с натискане на RETURN. В отговор на командата Input може да бъде въведен всеки, валиден за UniBASE израз. Типът му определя типа на променливата, която се създава. Ако в отговор на Input е въведен невалиден израз, или е натиснат <Return> се индицира синтактична грешка. --------------------------------------------------------------- 54 Insert [ Blank ] [ Before ] --------------------------------------------------------------- Добавя един нов запис във файла от базата данни в текущата позиция. Клаузата Before вмъква новия запис точно пред текущия запис. Ако последният запис е 5, INSERT BEFORE ще създаде нов запис 5; старият запис 5 ще стане запис 6 и т.н. Ако клаузата Before е пропусната, новият запис се вмъква, непосредствено след текущия запис. Например, ако текущият запис е 5, Insert ще създаде нов запис 6; старият запис 6 ще стане запис 7 и т.н. Ако файлът е индексиран записът се добавя в края му; ако записът се добавя в края на файла, могат да бъдат добавени няколко записа. Ако се използва опцията Blank запис се добавя, но данни могат да бъдат въведени с командите за редактиране. Ако клаузата Blank е пропусната, Insert ще представи новия запис за въвеждане във интерактивен режим. Данни могат да бъдат въведени само в този запис. --------------------------------------------------------------- 55 Join With name To filename [ Fields { field } ] [ For cond ] --------------------------------------------------------------- Командата Join създава нова база данни чрез сливане на определени записи и полета от текущия базов файл и файла който е отворен в указаната с name работна област. Файловият показалец се позиционира на първия запис от активния файл. Всеки запис от втория файл се преценява дали удовлетворява условието в клаузата For cond. Ако определеното условия е удовлетворено, към изходния файл се добавя нов запис. Когато всички записи във втория файл са сканирани, файловият показалец се премества на втория запис в активния файл и обработката са повтаря. Това продължава докато всички записи в активния файл файл бъдат обработени. За големи файлове тази последователна обработка може да отнеме много време. Трябва да се внимава при сливането на два файла. Възможно е те да бъдат свързани така, че обектния файл да надхвърли наличното пространство върху диска. --------------------------------------------------------------- 56 Menu 4 124 57 58 59 List (records) List Memory List Status List Structure --------------------------------------------------------------- 124 List | Display scope { field } [ To Print ] --------------------------------------------------------------- Тази команда се използува за преглед на съдържанието на базата данни в указаният обхват. Действието на командата се влияе от маската по полета, ако не е указан след обхвата списък от полета, които да се покажат. Разликата между варианта на командата с List и варианта с Display е че в първия случай не се прави паузи на всеки екран. --------------------------------------------------------------- 31, 57 List | Display Memory [ To Print ] --------------------------------------------------------------- Display Memory извежда на екрана името, типа и статуса на всяка активна работна променлива. Максималният брой на активните работни променливи е 32. В тази и други команди за извеждане на информация започващи с думите List или Display разликата между двете възможности е, че ако се използва Display, UniBASE ще прави паузи когато екрана се напълни с информация и ще изчаква да се натисне произволен клавиш. Ако е използвана конструкцията To Print, изхода от тези команди ще отива на принтера или на файла, където е пренасочен изхода за принтер вместо на екрана. --------------------------------------------------------------- 32, 58 List | Display Status [ To Print ] --------------------------------------------------------------- Подобно на предишната команда List | Display Status извежда на екрана или на принтера информация за вътрешното състояние на UniBASE. Информацията съдържа данни за това с кои бази данни се работи в момента, индексни и форматни файлове свързани с тях, релациите помежду им, а също и състоянието на управляващите флаговете. --------------------------------------------------------------- 33, 59 List | Display Structure [ To Print ] --------------------------------------------------------------- Командата извежда следната информация за активната база данни: име на файла, броя на записите, последна дата, на която са правени промени, пълна дефиниция на всяко поле и общия брой на байтовете в записа. --------------------------------------------------------------- 25, 60 Locate scope Continue --------------------------------------------------------------- Претърсва активния базов файл в зададения обхват за запис, който удовлетворява определеното в обхвата условие. Действието на командата завършва, когато или е намерен желания запис, или се е стигнало до края на обхвата. При успешно завършило търсене се извежда номера на намерения запис. Continue подновява търсенето зададено с предишна команда Locate --------------------------------------------------------------- 62 Menu To var [ Save ] --------------------------------------------------------------- Активира вече създадено меню чрез серия от команди @ coord Prompt. Избраната точка от менюто е число, което се записва в променливата. Aко не е указано Save, изчиства всички досегашни @ .. Prompt команди. --------------------------------------------------------------- 63 Menu 3 125 64 65 On Error On Escape On Key --------------------------------------------------------------- 125 On Error --------------------------------------------------------------- Тази команда указва действие което трябва да се изпълни от UniBASE при възникване на грешка. Остатъка от командния ред след On Error се запазва и при грешка се интерпретира като команда на UniBASE. Ако остатъка е празен ред - "" не се изпълнява никакво действие. --------------------------------------------------------------- 64 On Escape --------------------------------------------------------------- Тази команда указва действие което трябва да се изпълни от UniBASE при натискане на клавиш <esc>. Остатъка от командния ред след On Escape се запазва и се интерпретира като команда на UniBASE. Ако остатъка е празен ред - "" не се изпълнява никакво действие. --------------------------------------------------------------- 65 On Key --------------------------------------------------------------- Действието на командата е подобно на командата On Escape, но се отнася за всеки натиснат клавиш. --------------------------------------------------------------- 13, 35, 66 Do Case Case cond .. && команди [ Otherwise .. ] && команди End Case --------------------------------------------------------------- Това е команда за избор на един вариант измежду няколко възможни. След командата Do Case в програмата следват няколко команди Case cond. UniBASE проверява верността на всяко такова условие последователно без да изпълнява останалите команди докато срещне първото изпълнено условие. След това се изпълняват всички срещнати команди до появата на нова команда Case cond или команда Otherwise, или End Case. Ако никое от условията на командите Case не е изпълнено, и е зададена клаузата Otherwise - изпълняват се всички команди от този клон на програмата. Командата винаги трябва да завърши с End Case. Разрешено е вместването една в друга на няколко конструкции Do Case. --------------------------------------------------------------- 67 Pack --------------------------------------------------------------- Премахва записите, маркирани за изтриване, от активния файл. Всички отворени индексни файлове ще бъдат реиндексирани. Пространството върху диска, използвано от изтритите записи, ще се освободи за операционната система, когато базовият файл бъде затворен. Информацията за файла в директорията на диска може да не бъде коректна до затварянето на файла. --------------------------------------------------------------- 68 Procedure name --------------------------------------------------------------- Procedure се използва за определяне началото на всяка подпрограма в един процедурен файл. Всяка отделна в процедура процедурния файл трябва да започва Procedure с и име на процедурата. --------------------------------------------------------------- 69 Parameters { var } --------------------------------------------------------------- Parameters присвоява имена на локални променливи на елементи от данни,подадени от викаща програма. Parameters трябва да бъде първата изпълнима команда в получаващата програма. Подадените параметри могат да бъдат всякакви валидни изрази. Получаващият списък на параметри присвоява локални имена на променливи в списъка на параметри в изпращащата DO команда. Броят на елементите в двата списъка трябва да съвпада. Променливите се заличават, когато управлението бъде върнато на викащата програма. Ако прехвърленият параметър е работна променлива, нейната стойност може да бъде променена. Промяната ще бъде прехвърлена в променливата във викащата програма. Ако прехвърленият параметър е константа, тя ще стане работна променлива в получаващата програма. Ако прехвърленият параметър е израз, то той се изчислява. Резултатът от изчислението се прехвърля като работна променлива в приемащата програма. --------------------------------------------------------------- 70 Private { var } --------------------------------------------------------------- Списъкът от променливи създадени с тази команда е валиден само в текущата подпрограма. След приключването и те се освобождават. --------------------------------------------------------------- 71 Public { var } --------------------------------------------------------------- Създава глобални променливи от подпрограма. Списъкът от променливи в тази команда се запазва след приключването на подпрограмата. --------------------------------------------------------------- 72 Quit --------------------------------------------------------------- Командата Quit затваря всички отворени файлове, приключва UniBASE и връща управлението на операционната система. Това е единственият сигурен начин за излизане от UniBASE. Реинициализиране на компютъра без излизане с Quit от UniBASE може да повреди отворените файлове и да причини загуба на данни. --------------------------------------------------------------- 73 Read [ Save ] --------------------------------------------------------------- Активира форматиран вход/изход дефиниран чрез серия от команди @ .. Get и ако не е указано Save, изчиства всички досегашни @ .. Get команди. --------------------------------------------------------------- 74 Recall scope --------------------------------------------------------------- Възстановява маркираните за изтриване записи в активния базов файл.Командата няма да възстанови записи, които са били отстранени от базата данни посредством командите Pack или Zap. Ако е включен флага Deleted , няма да бъдат възстановени записи. В тази команда подразбран обхват е само текущия запис, така че ако не е въведен обхват действието на командата се извършва само върху текущия запис. --------------------------------------------------------------- 75 Reindex --------------------------------------------------------------- Престроява всички активни индексни файлове. --------------------------------------------------------------- 76 Menu 2 18 77 Release All Release var list --------------------------------------------------------------- 77 Release { var } --------------------------------------------------------------- Премахва от паметта указания списък от променливи. --------------------------------------------------------------- 78 Replace scope { field With exp } --------------------------------------------------------------- Променя съдържанието на определени полета в активния файл. Новото съдържание на тези полета е резултатът от изчислението на зададените изрази в командата. Ако е извършена промяна в индексно поле, то индексният файл трябва да бъде актуализиран с командата Reindex. --------------------------------------------------------------- 79 Restore From filename --------------------------------------------------------------- Указва име на файл с променливи, записани там по-рано с командата Save. Всички променливи от файла се прочитат и добавят в паметта. --------------------------------------------------------------- 80 Resume --------------------------------------------------------------- Командата Resume се използва заедно с командата Suspend. Ако изпълнението на програмата е било временно спряно със Suspend, то може да бъде продължено с командата Resume. --------------------------------------------------------------- 81 Retry --------------------------------------------------------------- Командата обикновено се използва когато трябва да се коригират грешки и повтаря изпълнението на командата докато завърши успешно. --------------------------------------------------------------- 82 Return --------------------------------------------------------------- С командата Return завършва една програма, или процедура и управлението се връща на викащата програма, или на UniBASE в интерактивен режим, ако потребителя е извикал програмата директно. Освобождава всички работни променливи, определени като Private, но не влияе на тези които са Public. --------------------------------------------------------------- 83 Save To filename { var } --------------------------------------------------------------- Указва списък от променливи, които да бъдат записани на дисковата памет във файл със име filename и подразбрано разширение .VAR. --------------------------------------------------------------- 84 Select expN | name --------------------------------------------------------------- С тази команда се определя дадена работна област за текуща. Това става или като се укаже името на областта, или като се укаже число, което е валиден номер на област. В UniBASE валидните номера на области са 1..10. Ако за номер на област се използва числото 0 UniBASE сам избира първата намерена работна област която е свободна, т.е. в нея няма отворен за достъп файл. --------------------------------------------------------------- 85 Menu 11 88 86 87 90 91 92 93 94 95 96 89 Set Alternate Set Color Set Device Set Fields Set Format Set Index Set Order Set Printer Set Procedure Set Relation Set Switch --------------------------------------------------------------- 88 Set Alternate To filename --------------------------------------------------------------- Задава име на алтернативен текстов изход. Целият вход и изход от екрана с изключение на този свързан с командите от групата @ ще се записва в този файл в текстов вид. --------------------------------------------------------------- 86 Set Color To expN , expN --------------------------------------------------------------- Задава атрибути за цветовете на екрана. Първото число е цвят на буквите, а второто - цвят на фона. За повече подробности около цветовете на екрана вижте в системната литература за компютъра. --------------------------------------------------------------- 87 Set Device To Print | Screen --------------------------------------------------------------- Set Device определя дали командите @ ... Say ще бъдат насочени към монитора или към печатащото устройство. Командата Set Device To Print изпраща изхода от командите @ ... Say на принтер. @... Get се игнорират. Подразбиращата се команда Set Device To Screen. --------------------------------------------------------------- 90 Set Fields To { field } | All --------------------------------------------------------------- В тази команда се изреждат в определена последователност и разделени със запетаи имената на полетата, които ще образуват маска върху работния файл. Докато съществува тази маска и флагът Fields е включен повечето от командите се държат така, сякаш текущата база данни съдържа само указаните в маската полета и в такава последователност, в каквато те са изброени в маската. При това в маската могат да се включват и полета от други бази данни, отворени за достъп в другите работни области (чрез знака "->"). Командата Set Fields to автоматично включва и флага Fields. Маската се дезактивира чрез изключване на флага, или като се укаже списък от полета, коти да участват в обработката в командите където синтаксиса позволява или просто чрез следващата команда. --------------------------------------------------------------- 91 Set Format to filename --------------------------------------------------------------- Задава форматен файл, който да се асоциира към текущата база данни за работа в интерактивен вход и изход. Предназначението на форматните файлове е описано в предишния раздел. Всяка работна област може да има по един асоцииран форматен файл, докато не се зададе друг чрез нова команда. --------------------------------------------------------------- 92 Set Index To { filename } --------------------------------------------------------------- Задава списък от индексни файлове, които да се асоциират с текущата база данни. Броят им не трябва да надвишава 4. Първият файл в списъка става водещ индекс. Това значи, че всички търсения в базата данни, както и логическата последователност на записите ще се определят от този индекс. --------------------------------------------------------------- 93 Set Order To expN --------------------------------------------------------------- Установява водещ индексен файл този, който е отворен под номер expN в списъка на индексните файлове. Занапред логическата последователност на базата данни ще се определя от този индексен файл. Ако expN е 0 то тази команда деактивира всички индексни файлове за временно, но не ги затваря. Макар и неактивни индексните файлове ще продължат да бъдат обновявани при нужда след всяка промяна в базовия файл. -------------------------------------------------------------- 94 Set Printer to filename --------------------------------------------------------------- Тази команда пренасочва изхода предназначен за принтер към дисков файл с указаното име. --------------------------------------------------------------- 95 Set Procedure To filename --------------------------------------------------------------- Задава име на програмен файл в който са записани множество потребителски подпрограми. След изпълнението на тази команда всяка команда Do filename ще търси в процедурния файл процедура с име filename. --------------------------------------------------------------- 96 Set Relation To field Into name --------------------------------------------------------------- Командата се използва за свързване на активния базов файл с база данни, отворена в работна област която се идентифицира по име. Ако вторият файл е индексиран, то всеки път когато показателят за текущ запис на първият файл се премести, в индекса на втория файл се търси значението на полето указано с field. Ако търсенето завърши с успех, вторият файл се позиционира на записа с такова значение на ключа. При неуспех вторият файл се позиционира в началото. Ако за втория файл няма активен индексен файл, UniBASE ще приеме релационната връзка само ако полето указано с field е числово. Тогава при смяна на текущия запис в първия файл, втория автоматично ще се позиционира върху запис с номер равен на стойността на полето field. --------------------------------------------------------------- 89 Menu 12 126 127 128 129 130 131 132 133 134 135 136 137 Alternate Carry Color Console Deleted Escape Exact Fields Print Step Talk Unique --------------------------------------------------------------- 109 Skip [ еxpN ] --------------------------------------------------------------- Придвижва файловия показалец напред или назад в активния файл от база данни. Ако в командата не е включен числов израз expN, файловият показалец се премества един запис напред. Ако с базата данни се използва и индексен файл, командата следва реда в индекса. --------------------------------------------------------------- 110 Store Exp To { var } --------------------------------------------------------------- Store създава и въвежда една или повече работни променливи. Един алтернативен синтаксис е: var = exp Ако една работна променлива вече съществува командата ще запише върху старото и съдържание. Един израз може да бъде запаметен в няколко променливи с помощта на една единствена команда Store. --------------------------------------------------------------- 111 Sum scope { field } [ To { var } ] --------------------------------------------------------------- Командата Sum сумира изрази, включващи числови полета за всички или за определен набор от записи в активния базов файл. --------------------------------------------------------------- 112 Suspend --------------------------------------------------------------- Командата е основно средство за проверка на програми с цел отстраняване на грешки, даваща възможност временно да се прекъсва изпълнението на програмата, да се изпълняват инструкции от системата и след това да се продължи изпълнението на прекъсната програма с командата Resume. --------------------------------------------------------------- 113 Text ... EndText --------------------------------------------------------------- Text Извежда на екрана следващите няколко реда до появата на думата EndText в началото на реда. --------------------------------------------------------------- 114 Use filename [ Index { filename } ] [ Alias { name } ] --------------------------------------------------------------- Отваря за достъп релационната таблица във файла с указаното име. Ако е указан списък от индексни файлове, те се асоциират с базата данни, като първият от тях става водещ индексен файл. Броят на индексните файлове не трябва да е по-голям от 4. Ако е указана опцията за задаване на име, това име ще бъде присвоено на работната област. --------------------------------------------------------------- 115 Wait [ ExpC ] [ To var ] --------------------------------------------------------------- Командата Wait спира временно изпълнението на програма докато не бъде натиснат кой да е клавиш. Ако е включена опцията [ To var ] натиснатия клавиш се запаметява в посочената променлива, която ще бъде символна променлива. --------------------------------------------------------------- 45, 61, 116 While cond Do | Do While cond .. && команди [ Loop ] [ Exit ] End While | End Do --------------------------------------------------------------- While cond Do е програмна команда, която позволява командни инструкции между нея и командата End While да бъдат повтаряни докато е удовлетворено условието cond. Тези две команди позволяват алтернативен синтаксис Do While cond и End Do. Разрешено е вместването една в друга на няколко конструкции While. Loop се използва за връщане в началото на програмна структура While. Тази команда е идентична с командата End While. Използва се обикновено да предотврати изпълнението на останалите команди в конструкцията, когато срещне някакво специално условие. Командата Exit прехвърля управлението от командата вътре в цикъла While на командата, непосредствено следваща края на цикъла. --------------------------------------------------------------- 117 Zap --------------------------------------------------------------- Отстранява всички записи от активната база данни. Всички отворени индексни файлове ще бъдат автоматично затворени. Еквивалентна е на Delete All и Pack, но работи по-бързо. --------------------------------------------------------------- 119 Help --------------------------------------------------------------- С тази команда можете да получите помощ за това как да използвате UniBASE. Това прави разучаването на системата особено лесно. Ако използвате командата Help без параметър, ще попаднете в главното меню на помощната информация, откъдето чрез последователно избиране от меню ще намерите точно тази помощна информация, която Ви интересува. Друг начин за използване на тази команда е като се въведе параметър ключова дума, с която започва команда, или име на вградена функция в UniBASE. В този случай ако за съответната дума има помощна информация, тя ще Ви бъде предоставена веднага. При използването на помощ избор от меню се прави както обикновено, с клавиш RETURN, а с клавиш PgUp можете да се върнете на предишно меню, ако има такова. С клавиш esc можете да излезете от режим помощ. --------------------------------------------------------------- 126 Set Alternate On | Off --------------------------------------------------------------- Този текст засега липсва --------------------------------------------------------------- 127 Set Carry On | Off --------------------------------------------------------------- Този текст засега липсва --------------------------------------------------------------- 128 Set Color On | Off --------------------------------------------------------------- Този текст засега липсва --------------------------------------------------------------- 129 Set Console On | Off --------------------------------------------------------------- Този текст засега липсва --------------------------------------------------------------- 130 Set Deleted On | Off --------------------------------------------------------------- Този текст засега липсва --------------------------------------------------------------- 131 Set Escape On | Off --------------------------------------------------------------- Този текст засега липсва --------------------------------------------------------------- 132 Set Exact On | Off --------------------------------------------------------------- Този текст засега липсва --------------------------------------------------------------- 133 Set Fields On | Off --------------------------------------------------------------- Този текст засега липсва --------------------------------------------------------------- 134 Set Print On | Off --------------------------------------------------------------- Този текст засега липсва --------------------------------------------------------------- 135 Set Step On | Off --------------------------------------------------------------- Този текст засега липсва --------------------------------------------------------------- 136 Set Talk On | Off --------------------------------------------------------------- Този текст засега липсва --------------------------------------------------------------- 137 Set Unique On | Off --------------------------------------------------------------- Този текст засега липсва --------------------------------------------------------------- 151 ABS ( N ) : N --------------------------------------------------------------- Връща абсолютната стойност на израза зададен с параметъра. --------------------------------------------------------------- 152 ASC ( C ) : N --------------------------------------------------------------- Връща кодовият номер на първият символ в параметъра съгласно кода ASCII. --------------------------------------------------------------- 153 AT ( C, C ) : N --------------------------------------------------------------- Ако първият параметър се среща като подниз във втория, то функцията връща номера на символа от който започва първото такова появяване. В противен случай резултата е 0. --------------------------------------------------------------- 154 BOF ( ) : L --------------------------------------------------------------- Служи за проверка дали файлът е позициониран в началото си. --------------------------------------------------------------- 155 TYPE ( U ) : C --------------------------------------------------------------- Връща един символ, който означава типа на зададения параметър. --------------------------------------------------------------- 156 CHR ( N ) : C --------------------------------------------------------------- Връща един символ, който има кодов номер по ASCII както стойността на параметъра. --------------------------------------------------------------- 157 COL ( ) : N --------------------------------------------------------------- Резултата е номера на текущата колона (X-координата) на курсора върху екрана. --------------------------------------------------------------- 158 SELECTED ( ) : N --------------------------------------------------------------- Връща номера на текущата работна област избрана с командата Select. --------------------------------------------------------------- 159 DATE ( ) : D --------------------------------------------------------------- Връща текущата дата, така както е известна на операционната система. --------------------------------------------------------------- 160 DAY ( D ) : N --------------------------------------------------------------- Връща деня от месеца който на датата зададена с параметъра. --------------------------------------------------------------- 161 DBF ( ) : C --------------------------------------------------------------- Връща името на файла във който е разположена базата данни на диска. --------------------------------------------------------------- 162 ISDELETED ( ) : L --------------------------------------------------------------- Резултата е .T. ако текущият запис на базата данни е маркиран за изтриване, .F. в обикновения случай. --------------------------------------------------------------- 163 DISKSPACE ( ) : N --------------------------------------------------------------- Връща количеството свободна памет върху текущия диск в байтове. --------------------------------------------------------------- 164 DOW ( D ) : N --------------------------------------------------------------- Връща деня от седмицата на датата параметър, като число от 1 до 7 за дните от понеделник до неделя. --------------------------------------------------------------- 165 DTOC ( D ) : C --------------------------------------------------------------- Тази функция превръща стойност от тип Date в стойност от тип Character. --------------------------------------------------------------- 166 EOF ( ) : L --------------------------------------------------------------- Тази функция отговаря дали е достигнат края на базата данни. --------------------------------------------------------------- 167 ERRORNO ( ) : N --------------------------------------------------------------- Резултатът е номера на грешката възникнала по време на работа на системата. Тази стойност се пази до първото повикване на функцията, всяко следващо повикване на функцията преди ново възникване на грешка ще връща стойност 0. --------------------------------------------------------------- 168 EXP ( N ) : N --------------------------------------------------------------- Изчислява и връща като резултат експонентата на параметъра. --------------------------------------------------------------- 169 FIELD ( N ) : C --------------------------------------------------------------- Връща името на полето в текущата база данни с номер зададен от параметъра. --------------------------------------------------------------- 170 FILE ( C ) : L --------------------------------------------------------------- Проверява дали съществува файл с указаното име. --------------------------------------------------------------- 171 FOUND ( ) : L --------------------------------------------------------------- Тази функция връща .T. ако резултатът от последната команда от групата Find, Locate и Continue е успешен, и .F. - в противен случай или ако текущия запис на базата данни е сменен с последвала друга команда. --------------------------------------------------------------- 172 IIF ( L, U, U ) : U --------------------------------------------------------------- Тази функция изчислява трите си параметъра без значение от какъв тип са втория и третия параметър. Ако първия параметър има стойност истина резултат от функцията е стойността на втория параметър; в противен случай резултат е стойността на третия параметър. Тъй като типа на резултата от тази функция не е предварително определен използването и в израз е невъзможно. Използвайте тази функция само като присвоявате резултата и на някоя променлива. --------------------------------------------------------------- 173 INKEY ( ) : N --------------------------------------------------------------- Тази функция предизвиква прочитане на един символ от клавиатурата и връща като резултат неговия кодов номер. --------------------------------------------------------------- 174 INT ( N ) : N --------------------------------------------------------------- Тази функция връща като резултат цялата част на параметъра. --------------------------------------------------------------- 175 ISALPHA ( C ) : L --------------------------------------------------------------- Резултатът е истина ако първият символ на параметъра е буква - латиница между 'A'..'Z', 'a'..'z' или кирилица между 'А'..'Я', 'а'..'я'. --------------------------------------------------------------- 176 ISCOLOR ( ) : L --------------------------------------------------------------- Връща дали е активен флагът Color. При активен флаг системата използва цветовете на екрана така, както са зададени от потребителя, а при изключен флаг се използват само бели символи на черен фон за нормален текст, и черни символи на бял фон за инверсен текст. --------------------------------------------------------------- 177 ISLOWER ( C ) : L --------------------------------------------------------------- Отговаря дали първият символ на параметъра е малка буква. --------------------------------------------------------------- 178 ISUPPER ( C ) : L --------------------------------------------------------------- Отговаря дали първият символ на параметъра е главна буква. --------------------------------------------------------------- 179 LEFT ( C, N ) : C --------------------------------------------------------------- Тази функция връща като резултат началната част на символния си параметър, с дължина толкова символа, колкото е стойността на втория параметър или по-малко, ако първия параметър не е толкова дълъг. --------------------------------------------------------------- 180 LEN ( C ) : N --------------------------------------------------------------- Връща дължината на символния си параметър. --------------------------------------------------------------- 181 LOG ( N ) : N --------------------------------------------------------------- Изчислява и връща естествен логаритъм от зададено число. --------------------------------------------------------------- 182 LOWER ( C ) : C --------------------------------------------------------------- Тази функция връща символен низ подобен на параметъра си, но в резултата всички главни букви са сменени с малки. --------------------------------------------------------------- 183 LTRIM ( C ) : C --------------------------------------------------------------- Премахва водещите интервали в началото на параметъра ако ги има. --------------------------------------------------------------- 184 LUPDATE ( ) : D --------------------------------------------------------------- Връща датата на последно обновяване на базата данни. --------------------------------------------------------------- 185 MAX ( N, N ) : N --------------------------------------------------------------- Връща по-голямото от двете числа. --------------------------------------------------------------- 186 MIN ( N, N ) : N --------------------------------------------------------------- Връща по-малкото от двете числа. --------------------------------------------------------------- 187 MOD ( N, N ) : N --------------------------------------------------------------- Връща остатъка при деление първото число на второто. --------------------------------------------------------------- 188 MONTH ( D ) : N --------------------------------------------------------------- Връща месеца от посочената дата. --------------------------------------------------------------- 189 NDX ( N ) : C --------------------------------------------------------------- Параметъра трябва да е число от 1 до 4. Резултата е името на индексния файл отворен към текущата база данни под този номер, ако такъв съществува, или празен низ в противния случай. --------------------------------------------------------------- 190 PCOL ( ) : N --------------------------------------------------------------- Връща текущата X-координата на принтера. --------------------------------------------------------------- 191 PROW ( ) : N --------------------------------------------------------------- Връща текущата Y-координата на принтера. --------------------------------------------------------------- 192 READKEY ( ) : N --------------------------------------------------------------- Връща число, което изразява клавиша, с който е напусната последната интерактивно редактираща команда (като Edit, Insert, Append). --------------------------------------------------------------- 193 RECCOUNT ( ) : N --------------------------------------------------------------- Връща броя на записите в текущата база данни. При това ако флагът Deleted е включен, то маркираните за изтриване записи са видими и поради това функцията връща общия брой на записите във файла. При изключен флаг резултат от функцията е само броят на записите немаркирани за изтриване. --------------------------------------------------------------- 194 RECNO ( ) : N --------------------------------------------------------------- Връща номера на текущия запис в базата данни. --------------------------------------------------------------- 195 RECSIZE ( ) : N --------------------------------------------------------------- Връща размера на един запис в байтове. --------------------------------------------------------------- 196 REPLICATE ( C, N ) : C --------------------------------------------------------------- Връща символен низ състоящ се от първият параметър повторен толкова пъти, колкото е вторият параметър. --------------------------------------------------------------- 197 RIGHT ( C, N ) : C --------------------------------------------------------------- Тази функция връща като резултат дясната част на символния си параметър, с дължина толкова символа, колкото е стойността на втория параметър или по-малко, ако първия параметър не е толкова дълъг. --------------------------------------------------------------- 198 ROUND ( N ) : N --------------------------------------------------------------- Връща цяло число, резултат от закръглянето на параметъра си. --------------------------------------------------------------- 199 RTRIM ( C ) : C --------------------------------------------------------------- Премахва завършващите интервали в началото на параметъра ако ги има. --------------------------------------------------------------- 200 SPACE ( N ) : C --------------------------------------------------------------- Връща символен низ с дължина колкото е стойността на параметъра и състоящ се само от интервали. --------------------------------------------------------------- 201 SQRT ( N ) : N --------------------------------------------------------------- Връща квадратен корен от параметъра. --------------------------------------------------------------- 202 STR ( N ) : C --------------------------------------------------------------- Връща символното представяне на числото - параметър. --------------------------------------------------------------- 203 STUFF ( C, N, N, C ) : C --------------------------------------------------------------- Тази функция се използва за по-сложна обработка на символни низове. Тя "изрязва" от първия параметър от символ с номер втория параметър участък с дължина колкото е третия параметър, и вмъква на същото място четвъртия параметър. --------------------------------------------------------------- 204 SUBSTR ( C, N, N ) : C --------------------------------------------------------------- Връща символен низ, който се състои от участък от първия параметър започващ от символ с номер като стойността на втория параметър и дължина колкото е третия параметър. --------------------------------------------------------------- 205 TIME ( ) : C --------------------------------------------------------------- Връща текущият час, така както е известен на операционната система. --------------------------------------------------------------- 206 TRIM ( C ) : C --------------------------------------------------------------- Премахва водещите и завършващите интервали в началото на параметъра ако ги има. --------------------------------------------------------------- 207 UPPER ( C ) : C --------------------------------------------------------------- Тази функция връща символен низ подобен на параметъра си, но в резултата всички малки букви са сменени с главни. --------------------------------------------------------------- 208 VAL ( C ) : N --------------------------------------------------------------- Превръща символен низ в число, ако това е възможно. В противен случай издава грешка. --------------------------------------------------------------- 209 YEAR ( D ) : N --------------------------------------------------------------- Връща годината от датата подадена чрез параметъра. --------------------------------------------------------------- 250 Menu 6 241 242 243 244 85 245 Вход, изход и променливи Работа с базите данни Управляващи команди Други команди Set команди Вградени функции --------------------------------------------------------------- 241 Menu 14 2 4 110 8 53 115 62 73 14 76 83 79 113 38 ?, ?? групата @ Store Accept Input Wait Menu Read Clear Release Save Restore Text Eject --------------------------------------------------------------- 242 Menu 6 240 239 238 237 236 235 Работни области на UniBASE Добавяне и извеждане на данни Отстраняване (изтриване) на данни Търсене и промяна на записи Работа с индексни файлове Други команди --------------------------------------------------------------- 240 Menu 4 84 114 19 89 Select Use Close Set --------------------------------------------------------------- 239 Menu 5 9 26 54 51 44 Append Copy Insert Import Export --------------------------------------------------------------- 238 Menu 4 29 74 67 117 Delete Recall Pack Zap --------------------------------------------------------------- 237 Menu 7 109 40 46 25 60 37 78 Skip Go Find Locate Continue Edit Replace --------------------------------------------------------------- 236 Menu 4 52 75 22 92 Index Reindex Close Index Set Index --------------------------------------------------------------- 235 Menu 6 124 111 11 28 55 96 List | Display Sum Average Count Join Set Relation --------------------------------------------------------------- 243 Menu 13 39 34 68 69 82 71 70 12 112 80 81 63 1 If .. Then , Else , End If команди [Do .. ] Procedure Parameters Return Public Private Cancel Suspend Resume Retry On Error, On Escape, On Key Run, ! --------------------------------------------------------------- 244 Menu 4 72 119 120 24 Quit Help Clear All Close All --------------------------------------------------------------- 245 Menu 5 234 233 232 231 230 Математически Символни Дата и час Базата данни Други --------------------------------------------------------------- 234 Menu 11 151 168 174 181 185 186 187 201 198 208 152 ABS EXP INT LOG MAX MIN MOD SQRT ROUND VAL ASC --------------------------------------------------------------- 233 Menu 10 153 156 165 175 177 178 179 180 182 229 AT CHR DTOC ISALPHA ISLOWER ISUPPER LEFT LEN LOWER Други --------------------------------------------------------------- 229 Menu 10 183 196 197 199 200 202 203 204 206 207 LTRIM REPLICATE RIGHT RTRIM SPACE STR STUFF SUBSTR TRIM UPPER --------------------------------------------------------------- 232 Menu 6 159 160 164 205 209 188 DATE DAY DOW TIME YEAR MONTH --------------------------------------------------------------- 231 Menu 12 154 158 161 162 166 169 171 184 189 193 194 195 BOF SELECTED DBF ISDELETED EOF FIELD FOUND LUPDATE NDX RECCOUNT RECNO RECSIZE --------------------------------------------------------------- 230 Menu 11 155 157 163 167 170 172 173 176 190 191 192 TYPE COL DISKSPACE ERRORNO FILE IIF INKEY ISCOLOR PCOL PROW READKEY