Защо екранни форми
Целта на една база от данни е да се разработи приложение (ИС), с което работят крайните потребители — а те няма да пишат заявки. От тях се очаква да въвеждат данни, да ги променят и да извикват предварително подготвени от програмиста процедури. Въвеждането става с екранни форми (forms), а извеждането на информация — с отчети (reports, в следващ урок). Формите трябва да са удобни И да съдържат контрол на въведените данни.
Съветникът Form Wizard
Най-простият начин: избираме таблица (или заявка!) и кои атрибути да се показват; после — начин на подреждане (напр. Justified — стойностите в редове като текстов документ). Етикетите идват от параметъра Caption, зададен при създаване на таблицата — затова е добре да го попълваме.
В готовата форма се движим по кортежите с PgDn/PgUp или навигационния панел долу; можем да редактираме стойности и да добавяме нови кортежи (празен кортеж след последния). Промененото съдържание е само в паметта — за да се запази, базата трябва да се съхрани.
Form Design — контроли, свойства, събития
По-мощният инструмент е изгледът Form Design: празна форма + лента с графичните елементи (контроли). Условно ги делим на:
- Пасивни — правят формата прегледна, не са свързани с данни: Label (етикет), Line (линия), Rectangle (правоъгълник), Image.
- Активни — за въвеждане и редактиране: Text Box (текстова кутия), Button (бутон), Combo Box, List Box, Check Box, Option Button.
С всеки елемент се свързва множество свойства (properties) — събрани в прозореца Property Sheet, класифицирани в страници: Format, Data, Events, Other, All. С активните контроли се свързват и събития (events): On Click, On Dbl Click, Text Changed…
Двете най-важни свойства
Record Source на формата = таблицата или заявката, чиито данни показва. Control Source на контролата = атрибутът, с който е свързана. Така Text Box „Име" показва и редактира атрибута Име на текущия кортеж.
Контрол на данните
Крайният потребител прави грешки — от небрежност или непознаване на допустимите стойности. При лош контрол в таблиците попадат недопустими стойности → неправилно функциониране на ИС (а в банкиране и търговия това е непоправимо). Инструментите:
| Инструмент | Какво прави | Пример |
|---|---|---|
Field Size | ограничава дължината/подтипа | Клас: 3 байта вместо 255 |
Required = Yes | задължава да се въведе стойност | ЕГН |
Allow Zero Length = No | забранява празния низ (различен от null!) | ЕГН |
Validation Rule | условие, което стойността трябва да удовлетворява | >= 1 And <= 26 |
Validation Text | съобщението при нарушено условие | „Номерът трябва да е между 1 и 26“ |
Input Mask | маска как да изглежда стойността при въвеждане | 0000000000 за ЕГН |
Знаците на входната маска
0— задължителна цифра;9— незадължителна цифра;#— цифра, плюс, минус или интервал.L— задължителна буква;?— незадължителна буква;A— задължителна цифра или буква;a— незадължителна.&— задължителен знак;C— незадължителен знак.
За ЕГН подходящата маска е 0000000000 — точно 10 задължителни цифри. Има и Input Mask Wizard с готови маски.
Комбинираната текстова кутия
Много ефектен контрол на данните: стойностите се ограничават само до елементите на списъка ѝ — въвеждането на неправилна стойност е невъзможно. Подходяща за учебните предмети, допустимите оценки и т.н.
Какво трябва да запомниш
- Форми = въвеждане; отчети = извеждане. Формите се правят с Wizard или Form Design.
- Record Source свързва формата с таблица/заявка; Control Source — контролата с атрибут.
- Пасивни контроли (Label, Line…) и активни (Text Box, Button, Combo Box…) + събития.
- Контрол на данните: Field Size, Required, Allow Zero Length, Validation Rule/Text, Input Mask.
- Комбинираната кутия прави невалидното въвеждане невъзможно.