Программный Файл: ...\Samples\Solution\Forms\Datalook.scx

Рассматриваемый пример демонстрирует, как пользователь может определять источники данных для Списков типа ListBox или ComboBox, задавать значения элементов "на-прямую", из Таблицы или из Запроса к Таблицам. Значения пользовательского выбора сохраняются в текущей Таблице.

Списки - это наиболее используемый Контрол, с помощью которого обеспечивается надежный Ввод данных. Для активации требуемой функциональности рассматриваемых Списков необходимо определить несколько их Свойств - и Контрол готов к работе. Например, для используемого в данном примере списка с именем cboEmp_id, который создан на Закладке Using Combo Box (Использование Списка), требуется определить  всего лишь следующие Свйства :

Свойство Установка (Значение)

BoundColumn

2

ColumnCount

2

ControlSource

orders.emp_id

RowSource

SELECT DISTINCT ALLTRIM( employee.first_name) + " " + ALLTRIM( employee.last_name) , EMP_ID FROM employee INTO CURSOR cEmpCombo ORDER BY first_name

RowSourceType

3 – SQL Statement (Запрос SQL)

В целях обеспечения однозначного выбора Служащего (его идентификатора, табельного номера) в список включается Комбинация Фамилии и Имени Служащего (1-ый столбец), и Идентификатор (ID) - (2-ой столбец); детально смотрите конструкцию оператора SELECT SQL.

Поскольку оператор SELECT создает временный Курсор, то его требуется Закрыть при завершении работы, в коде События Destroy:

( Вариант от Переводчика: USE IN SELECT("cEmpCombo") )

  CopyCode imageКопировать Код
IF USED("cEmpCombo") THEN
USE IN cEmpCombo
ENDIF

См. также