Лого на 91. НЕГ „Проф. Константин Гълъбов“

Модул 3 · Урок 18

Екранни форми. Контрол на данните

Форми за крайния потребител: Form Wizard и Form Design, пасивни и активни контроли, свойства и събития, и контролът на данните — Validation Rule и Input Mask.

Защо екранни форми

Целта на една база от данни е да се разработи приложение (ИС), с което работят крайните потребители — а те няма да пишат заявки. От тях се очаква да въвеждат данни, да ги променят и да извикват предварително подготвени от програмиста процедури. Въвеждането става с екранни форми (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.
  • Комбинираната кутия прави невалидното въвеждане невъзможно.