![]() |
|
![]() ![]() ![]() |
|
McDevil |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 8.12.2005 Где: Казахстан, Павлод ар Репутация: нет Всего: 3 |
В общем забыл самое простое(а ведь раньше делал как - то), и не знаю как это обьяснить - то. В общем надо, чтобы при указывании пола сотрудника сразу показывалось поле национальность соответственно "русский" или "русская" - эти значения берутся из справочника и из выпадающего списка. Для полного уточнения добавляю изображение не полянитесь скачайте плиз 91 кб...
Присоединённый файл ( Кол-во скачиваний: 60 ) ![]() -------------------- мы знаем столько, сколько можем, а можем столько, сколь хотим... Тестируем программу: SPL-программа аналогов функций |
|||
|
||||
Halt |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 12.2.2006 Репутация: нет Всего: нет |
Ниче не понимаю, обьясни толком, твоя имага только дело запутывает.
|
|||
|
||||
sexton |
|
|||
![]() sexton=Пономарь (eng) ![]() ![]() Профиль Группа: Участник Сообщений: 503 Регистрация: 5.5.2004 Где: Ульяновск Репутация: нет Всего: 9 |
Нуу умных вариантов много... Могу навскидку подкинуть самый глупый и простой - писать в базу по два наименования для каждого пола и вести дополнительное поле, в котором будет соответствующий этому написанию пол...
|
|||
|
||||
McDevil |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 8.12.2005 Где: Казахстан, Павлод ар Репутация: нет Всего: 3 |
Мне надо чтоб выбрал ты пол - сразу поле национальность стало женског или мужского пола... Ети национальности идут из справочника т.е. существует таблица в которой есть поля nationmen и nationwomen и из которых берутся национальности... Если бы я не использовал DBGrid, а допустим типа DBEdit - ов накидал DBLoockUpComboBox - ов все было бы проще, я бы просто скрывал не нужный мне LoockUp и в принципе все, но надо вот именно так... ![]() Это сообщение отредактировал(а) McDevil - 12.2.2006, 21:20 -------------------- мы знаем столько, сколько можем, а можем столько, сколь хотим... Тестируем программу: SPL-программа аналогов функций |
|||
|
||||
Foley |
|
|||
![]() Фсемба Яцца ![]() Профиль Группа: Участник Сообщений: 235 Регистрация: 31.1.2006 Где: Россия, Арх.обл Репутация: нет Всего: 7 |
а тебе надо чтоб в гриде выбрал пол, а грид скрыл ненужную национальность?
тогда попробуй на таймер накидать процедурку... чтоб поле становилось невидимым если неудовлетворяет значению... если честно не догоняю что ты хочешь... |
|||
|
||||
sexton |
|
|||
![]() sexton=Пономарь (eng) ![]() ![]() Профиль Группа: Участник Сообщений: 503 Регистрация: 5.5.2004 Где: Ульяновск Репутация: нет Всего: 9 |
Создаем в справочнике национальностей подобную структуру: ID Пол Национальность 1 м русский 2 м нерусский 3 ж русская 4 ж нерусская После чего фильтруем этот справочник по введенному значению пола... |
|||
|
||||
McDevil |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 8.12.2005 Где: Казахстан, Павлод ар Репутация: нет Всего: 3 |
Да нет проще можно...
-------------------- мы знаем столько, сколько можем, а можем столько, сколь хотим... Тестируем программу: SPL-программа аналогов функций |
|||
|
||||
sexton |
|
|||
![]() sexton=Пономарь (eng) ![]() ![]() Профиль Группа: Участник Сообщений: 503 Регистрация: 5.5.2004 Где: Ульяновск Репутация: нет Всего: 9 |
Не спорю. Например хранить для каждой записи национальности два написания - в женском и мужском роде. Типа: ID Национальность(м) Национальность(ж) |
|||
|
||||
McDevil |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 8.12.2005 Где: Казахстан, Павлод ар Репутация: нет Всего: 3 |
Причем тут таймер... Может что-то не догоняю... Добавлено @ 11:37
А можно как нибудь присвоить ячейке грида DBLoockUpComboBox... Не, не затупил не обращай внимания... Блин как-то это просто все делалось... Это сообщение отредактировал(а) McDevil - 14.2.2006, 11:39 -------------------- мы знаем столько, сколько можем, а можем столько, сколь хотим... Тестируем программу: SPL-программа аналогов функций |
|||
|
||||
SergeBS |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
McDevil
LookupField, CalculatedField - 2 разумных варианта. Хинт: лукап не обязательно 1 поле ![]() |
|||
|
||||
StayAtHome |
|
|||
![]() Домосед ![]() ![]() Профиль Группа: Участник Сообщений: 456 Регистрация: 26.1.2004 Где: Украина Репутация: нет Всего: 16 |
Может это имелось ввиду?
DRKB: Нередко в колонке DBGrid нужно вывести не реальное значение, хранящееся в поле соответствующей таблицы, а другие данные, соответствующие имеющимся (например, символьную строку вместо ее числового кода). В этом случае также используется метод TextOut свойства Canvas компонента TDBGrid: Соответствующий код для Delphi имеет вид:
|
|||
|
||||
DDX |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 127 Регистрация: 31.1.2005 Где: Москва Репутация: 5 Всего: 5 |
блин, Sexton высказал самый нормальный вариант:
хранишь поля : ид, название национальности, пол 1,русский,м 2, русская, ж делаешь запрос источником данных для лукапдбкомбобокса а када при вводе выбираешь пол, фильтруешь источник данных бокса в зависимости от пола
EhLib тебе в руки Это сообщение отредактировал(а) DDX - 14.2.2006, 17:18 --------------------
Учиться, учитьcя и ещё раз учиться |
|||
|
||||
McDevil |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 8.12.2005 Где: Казахстан, Павлод ар Репутация: нет Всего: 3 |
Спасибо конечно всем, но все, что вы говорите у меня впринципе уже реализованно...
Просто получается я нормально объяснить не могу... Попытка number три: - у меня есть таблица-справочник под названием SprNation с полями kodNat, nationMen, nationWomen... - на имаге видно, что в Grid'e присутствует два поля с одинаковым названием "Национальность", в которых соответственно варианты написания национальности для женского и мужитского пола. Поля - эти лукаповские и из списка - соответственно... ЗАДАЧА: чтобы при выборе пола оставалось корректное(нужное по логике) поле "национальность", для выбранного значения в поле "пол", и при этом выбранные ранее поля "пол" и "национальность" для других сотрудников не изменялись... т.е. что не было такого типа выбираешь пол мужской и все поля "национальность" для записей женского рода также становились мужского пола... Заранее спасибо, тем кого я еще не вывел из себя окончательно и тем кто нашел в себе силы ответить... ![]() -------------------- мы знаем столько, сколько можем, а можем столько, сколь хотим... Тестируем программу: SPL-программа аналогов функций |
|||
|
||||
Foley |
|
|||
![]() Фсемба Яцца ![]() Профиль Группа: Участник Сообщений: 235 Регистрация: 31.1.2006 Где: Россия, Арх.обл Репутация: нет Всего: 7 |
Все понятно... занчит как я и говорил... что б вгриде отображалось одно поле
, и другие записи не менялись... В ГРИДЕ не пробовал делать Columns и потом присваивать Visible True и False... хотя с трудом представляю себе код... хотя есть компонента ГРИДА с ROW и COL: вот процедурка(в смысле код): unit VUBComps; interface uses SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, DB, Menus; type TDBGridVUB = class(TDBGrid) private { Private declarations } protected { Protected declarations } public property Canvas; function CellRect(ACol, ARow: Longint): TRect; property Col; property Row; procedure Register; implementation procedure Register; begin RegisterComponents('VUBudget', [TDBGridVUB]); end; function TDBGridVUB.CellRect(ACol, ARow: Longint): TRect; begin Result := inherited CellRect(ACol, ARow); end; end. может придумаешь что с этим можно сделать... Добавлено @ 00:16 ты там еще говорил про добавление LookupComboBox в грид... не знаю как это но просто ComboBox можно вставить так: 1. Дважды щелкнуть на DBGrid 2. Добавить колонку 3. Указать поле которое будет показываться (свойство FieldName) 4. Заполнить список (свойство PickList) |
|||
|
||||
McDevil |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 8.12.2005 Где: Казахстан, Павлод ар Репутация: нет Всего: 3 |
Foley, спасибо, но не то...
-------------------- мы знаем столько, сколько можем, а можем столько, сколь хотим... Тестируем программу: SPL-программа аналогов функций |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Базы данных и репортинг" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |