Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Использование справочников [D5, IB6.x]


RDA ©   (2002-08-08 11:50:00) 

Мастера, может кто поделится способом использования различных справочников на одной форме (причем количество столбцов в Гриде может быть различно - в зависимости от справочника)


ShuraGrp   (2002-08-08 15:27:00) [1]

shuragrp@mail.ru


RDA   (2002-08-08 13:40:00) [2]

Спасибо за ответы.
>>ShuraGrp - вот бы мыло еще указал.


ShuraGrp   (2002-08-08 13:24:00) [3]

Я делал все через StringList. входной параметр м.б. и String = StringList.Text так легче передавать по умолчанию. Для универсальности можно смастерить процедуру, которая по будет делать конкретные поля примерно как SaS13 © (08.08.02 12:55), но это зависит от грида, которым пользуешся. Желательно всетаки размеры формы менять динамически.
Хотя можно управлять Field.Visible по крайней мере в гриде.
Там где надо на выход я передавал ВСЕ поля в формате Field.name=Value.
Более подробно можем поговорить на мыле


SaS13   (2002-08-08 12:55:00) [4]


> RDA © (08.08.02 12:38)

1. можно описать свой класс, а можно record"ы в tList"е к примеру хранить, в проц. можно передавать динамический массив, но обязательно не пустой, и всегда можно передать указатель =))
2. Grid.Columns.CLear;
for _i := 0 to DataSet.Fields.Count - 1 do
with Grid.Columns.Add do begin
FieldName := DataSet.Fields[_i].Fieldname;
Width := 50; // - из данных
Title := "Номер"; // - из данных
end;
Писал на память, могут быть неточности


RDA   (2002-08-08 12:38:00) [5]

>> ShuraGrp
Спасибо. Еще два вопроса по этой теме.
1. Если в гриде различное количество столбцов то как это можно организовать (количество, поля, заголовки - может процедура добавления столбца и как параметры три динамических массива -
Если возможно передать динамический масив в процедуру).
2. К примеру грид содержит 4 столбца, в первом случае необходимо значение 1 стобца, во-втором 2 столбца и тд.

И немного не в тему в каком модуле описан класс TSQLs из библиотеки FBIPlus


SaS13   (2002-08-08 12:28:00) [6]

можешь вообще все справочники на одной форме сделать:
слева дерево - список справочников, справа один грид - инфа, либо два грида (показывать или скрывать второй) - если есть связь мастер-детайл. И менять инфу в зависимости от выбранного в дереве справочника, довольно наглядно получается.


ShuraGrp   (2002-08-08 12:16:00) [7]

У меня получилось так:
1.Классификатор (грид с полями)
2.Масте-детейл (грид с полями детейла для редактирования и мастера для отображения)
3.Дерево с гридом
4.Выбор (один грид)
5.Период
6.Два грида для выбора из одного списка в другой
7.Поиск (на базе фильтра)
Может что забыл, но этот набор позволяет писать вполне сносные программы без написания дополнительных форм, кроме экзотики, когда нужны сложные формы.


ShuraGrp   (2002-08-08 12:06:00) [8]

Необходимо использовать статические поля DataSet, т.е. определить DisplayLabel и т.д. Для удобства можно на Show формы можно менять ее размер в соответствии с гридом. Можно создавать поля редактирования над гридом для наглядности...


RDA   (2002-08-08 12:06:00) [9]

Вполне возможно (наверняка) что таблиц будет несколько, также может быть использована связь мастер-деталь. Я хочу уточнить возможно ли каким-ть способом использовать приличное количество справочников и при этом использовать пару-тройку форм, а не 25 штук. Допустим просто таблица, две таблицы мастер-деталь в гриде, две таблицы матер-деталь дерево и грид, при том что столбцов в гриде может быть 2,3,4... и т.д. Или лучше все-таки каждый справочник писать как отдельную ДЛЛ. Вобщем кто наступал на эти грабли, посоветуйте правильную дорогу (в обход).


ЮЮ   (2002-08-08 12:00:00) [10]

А если DataSet-ы для справочников есть, то там можно и установитть для полей Visible b DisplayName


AlexSam   (2002-08-08 12:00:00) [11]

SaS13 - согласен


SaS13   (2002-08-08 11:56:00) [12]

Меняешь DataSource.DataSet, для "нормальных" заголовков можешь завести отдельную табличку, либо в ресурсах где-нить.


AlexSam   (2002-08-08 11:53:00) [13]

Не совсем понял.
Тебе нужно выводить на форму для просмотра разные таблицы по одной или несколько?


Наверх

Титульная страница Поиск, карта сайта Написать письмо