|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
21.04.2016, 08:36 | #1 |
Пользователь
Регистрация: 21.04.2016
Сообщений: 19
|
Перевод значений в DBGrid
У меня есть таблица, которая выводит код отдела, код хранения и код типа. Нужно каким то образом перевести код в значение этого кода, если значения находятся в других таблицах... Допустим, код отдела - 4, а значение должно быть ОТИ.... Как это можно осуществить?
|
21.04.2016, 09:28 | #2 | ||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,528
|
ПУТЬ ПЕРВЫЙ "дорабатываем" Access.
Цитата:
Цитата:
2. добавить "исходную" таблицу 3. добавить таблицы из КОТОРЫХ надо "подставлять" значения. 4. установить связи между таблицами(в запросе), если по какой-то причине они не получились сами(из схемы данных). 5. отобрать для "показа" нужные поля из имеющихся таблиц. 6. сохранить этот запрос и в Delphi вместо исходной таблицы использовать ЭТОТ запрос. ПУТЬ ВТОРОЙ Delphi переход от табличного доступа(ADOTable) к нормальному SQL (ADOQuery, ADODataSet). 1-5. выполнить пп.1-5 из предыдущего пути 6. в конструкторе перейти к показу SQL и скопиировать ЭТО в поле для редакции SQL cоответствующего компонента. ПУТЬ ТРЕТИЙ. Только Delphi. Опять же забыть про ADOTable и взять ADOQuery(или ADODataSet). и написать SQL собственноручно (без подсказок и вар.1, 2). Код:
s Код:
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 21.04.2016 в 09:32. |
||
21.04.2016, 17:09 | #3 | |
Форумчанин
Регистрация: 27.10.2014
Сообщений: 594
|
Цитата:
1. Добавляем в список полей датасета (Table1, Query1 или что у вас там привязано к DBGrid) новое поле, например, "OtdelName". Для этого - даблклик по датасету и откроется список его полей... Правой кнопкой мышки по списку и выбираем "New Field". В поле "Name" пишем "OtdelName". 2. Выбираем тип поля = String. 3. Отмечаем FieldType = Lookup. 4. Выбираем из списка полей вашего датасета поле, которое содержит код отдела, пусть это OtdKod. 5. Выбираем из списка датасетов вашу таблицу, в которой кодам отделов сопоставлены их наименования, пусть это таблица TableOtdel. 6. Теперь в списке полей этой таблицы выбираем LookUp Keys - ключевое поле с кодом отдела, пусть Kod. 7. ... и поле, которое мы хотим видеть (Result Field), т.е. поле с наименованием отдела, пусть Otdel. 8. Жмем ОК. Все! Теперь добавляем в DBGrid вместо поля кода отдела наше новое поле "OtdelName" и любуемся результатом... Последний раз редактировалось kropotkina-alice; 21.04.2016 в 17:12. |
|
22.04.2016, 07:33 | #4 |
Пользователь
Регистрация: 21.04.2016
Сообщений: 19
|
kropotkina-alice
А будет ли это поле соответствовать другим данным?
|
22.04.2016, 19:20 | #5 |
Форумчанин
Регистрация: 27.10.2014
Сообщений: 594
|
|
25.04.2016, 07:08 | #6 |
Пользователь
Регистрация: 21.04.2016
Сообщений: 19
|
Спасибо Вам большое
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перевод значений выведенных формулами в обычные цифры | dmonco | Microsoft Office Excel | 2 | 24.03.2012 03:59 |
перевод значений | DeDoK | Общие вопросы Delphi | 5 | 15.08.2010 08:36 |
Фильтрация числовых значений в DBgrid | girz | БД в Delphi | 14 | 12.05.2009 16:52 |
Перевод значений | DeDoK | Общие вопросы Delphi | 3 | 19.05.2008 08:39 |
Выборка значений ячеек DBGrid | Македонский | БД в Delphi | 3 | 05.12.2007 07:10 |