Вновь устроившись за компьютером, я стал прикидывать - что следует изменить в форме RMA Input. В основном это будет похожим на то, что делалось с предыдущими двумя формами: окна комбинированных списков нужно заполнить строками, которые впоследствии можно будет выбирать. Я ограничу DBNavigator так, чтобы у него остались те же четыре кнопки как и в предыдущей форме. Необходимо реорганизовать и изменить размеры компонентов.

Кроме этого, имелись еще две трудности. Во-первых, DBGrid. Данный компонент оснащен набором опций для выбора, и я должен оставить те из них, которые сделают DBGrid подходящим инструментом для поиска и отображения элементов, обнаруженных в счетах. Мое решение было таково: нужно показать заголовки так, чтобы пользователи знали, на что они смотрят. Следует предоставить пользователям изменять по своему вкусу размер колонок. Наверное неплохо будет разделить строки и колонки линиями. Необходима также маленькая стрелка, с помощью которой можно указать на выбранную строку.

Что же касается компонентов Table и DataSource, то они остаются теми же самыми, за двумя исключениями: в данном случае и RMATable и NextRMATable не должны устанавливаться в состояние ReadOnly. Форма RMA Input будет добавлять и модифицировать записи в таблице RMA, а при добавлении записей будет еще и обновляться номер следующего RMA в таблице Next RMA Number.

И последнее дополнение. Я подумал, что будет неплохо иметь метку над DescDBMemo и поместил в нужном месте компонент Label, назвав его DescLabel Все детали изменений, проведенных в форме, представлены в таблице 18.14.

МОДИФИКАЦИЯ ФОРМЫ RMA Input

Таблица 18.14

Первоначальные изменения в форме RMA Input

Имя

Свойство

Значение

АсШМАРогт

1_еп

Тор

Таблица 18.14 (продолжение)

Имя Свойство

Значение

Width

Height

Caption

Add RMA Reco

RMALabel Left

Top

Width

Height

Caption

RMA number

InvoiceLabel Left

Top

Width

Height

Caption

Invoice number

IssueDateLabel Left

Top

Width

Height

Caption

Issue date

CompanyLabel Left

Top

Width

Height

Caption

Company

InitLabel Left

Top

Width

Height

Caption

Initials

Таблица 18.14 (продолжение)

Имя

Свойство

Значение

StatusLabel

Left

Top

Width

Height

Caption

Status

DescLabel

Left

Top

Width

Height

Caption

Description

RMADBText

Left

Top

Width

Height

DataField

RMAJD

DataSource

RMASource

InvoiceDBText

Left

Top

Width

Height

DataField

INV_NUM

DataSource

InvoiceSource

IssueDBText

Left

Top

Width

Height

DataField

RMA_DATE

DataSource

RMASource

Таблица 18.14 (продолжение)

Имя Свойство

Значение

CustomerDBText Left

Top

Width

Height

DataField

CST_COMPNM

DataSource

CustomerSource

InitComboBox Left

Top

Width

Height

Style

csDropDownList

ItemHeight

StatusComboBox Left

Top

Width

Height

Style

csDropDownList

ItemHeight

NavPanel Left

Top

Width

Height

FindBtn Left

Top

Width

Height

Caption

&Find Invoice

OKBtn Left

Top

Width

Height

Kind

bkOK

Имя

Свойство

Таблица 18.14 (продолжение) Значение

CancelBtn

Left

Top

Width

Height

Kind

bkCancel

ItemsDBGrid

Left

Top

Width

Height

DataSource

ItemsSource

Options

[dgTitles, dglndicator, dgColumnResize, dgColLines, dgRowLines, dgRowSelect]

DescDBMemo

Left

Top

Width

Height

DataField

RMA_DESC

DataSource

RMASource

InvoiceNav

Left

Top

Width

Height

DataSource

InvoiceSource

VisibleButtons

[nbFirst, nbPrior, nbNext, nbLast]

RMATable

DataBaseName

BOXLIGHT

IndexName

RMAJD

TableName

RMA.DBF

InvoiceTable

DataBaseName

BOXLIGHT

IndexName

INV_NUM

Readonly

True

TableName

INVOICES.DBF

Таблица 18.14 (продолжение)

Имя

Свойство

Значение

ItemsTable

DataBaseName

BOXLIGHT

IndexName

ITMJNVNUM

Readonly

True

TableName

INVITEMS.DBF

Employ eeTable

DataBaseName

BOXLIGHT

IndexName

EMPJNITS

Readonly

True

TableName

EMPLGYEE.DBF

CustomerTable

DataBaseName

BOXLIGHT

IndexName

CSTJD

Readonly

True

TableName

CUSTOMER.DBF

NextRMATable

DataBaseName

BOXLIGHT

TableName

RMANXT.DBF

RMASource

AutoEdit

False

DataSet

RMATable

InvoiceSource

AutoEdit

False

DataSet

InvoiceTable

ItemsSource

AutoEdit

False

DataSet

ItemsTable

EmployeeSource

AutoEdit

False

DataSet

Employ eeTable

CustomerSource

AutoEdit

False

DataSet

CustomerTable

NextRMASource

AutoEdit

False

DataSet

NextRMATable

Я совсем забыл заполнить списки в окнах двух комбинированных списков. Для этого нужно вновь обратиться к редактору StringList. Для целей тестирования мне нужно в перечень Items в InitComboBox ввести инициалы пяти служащих, разместив их в любом порядке. Кроме того, я сделал четыре сообщения о статусе для списка StatusComboBox. Точная копия введенного изображена в таблице 18.15.


⇐ Предыдущая страница| |Следующая страница ⇒

Программирование в среде Delphi



Новости за месяц

  • Ноябрь
    2019
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс