![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Заполнение DBListBox при помощи StoredProc [D5, MSSQL]
kirillrepin © (2008-08-18 16:41:00)Подскажите пожалуйста как заполнить DBListBox при помощи StoredProc (возвращает выборку)?
clickmaker (2008-08-19 11:01:00) [1]> Если так непременно надо Items.Add использовать - возьми
> обычный TListBox
Не всегда. DBListBox может подойти, если надо в поле базы записать какое-либо число с описанием. Н-р, некий статус, для которого нет отдельного справочника, набор констант
KirillRepin (2008-08-19 10:59:00) [2]Удалено модератором
Ega23 (2008-08-19 10:54:00) [3]
> А возможно давать конкретный ответ на поставленный вопрос,
> и не разводить философию.
Конкретный ответ - этот контрол не предназначен для таких операций. Если так непременно надо Items.Add использовать - возьми обычный TListBox. И почитай, в чём разница между TListBox и TDBListBox. Объяснять - очень долго.
> каждый дро....ит как хочет!
Не хами.
clickmaker (2008-08-19 10:51:00) [4]> [16] KirillRepin © (19.08.08 10:40)
Кстати, стоит прислушаться.
Если данные в списке из справочника и есть связь ОсновнаяТаблица.КакойтоID - Справочник.ID, то проще юзать какой-нибудь Lookup-control
KirillRepin (2008-08-19 10:40:00) [5]
> Это попытка забить молоток гвоздём.
А возможно давать конкретный ответ на поставленный вопрос, и не разводить философию.
каждый дро....ит как хочет!
Ega23 (2008-08-19 10:30:00) [6]
DBListBox1.Items.Add(StoredProc1.Fields[0].AsString);
Это попытка забить молоток гвоздём.
MsGuns (2008-08-18 22:21:00) [7]Маразм крепчал
Может, хоть немного почитать о назначении DB-aware контролов и хранимых процедур на сервере ?
KirillRepin (2008-08-18 18:44:00) [8]
> ну, возможно,
> DataSet у DataSource либо только для чтения
> либо CachedUpdates выключены
CachedUpdates был выключен, включил попробовал все тоже самое.
DataSet у DataSource либо только для чтения - не нашел где посмотреть
clickmaker (2008-08-18 18:32:00) [9]ну, возможно, DataSet у DataSource либо только для чтения, либо CachedUpdates выключены
KirillRepin (2008-08-18 18:31:00) [10]
> DataSource & DataField назначены?
> Для чего вообще тебе этот список нужен?
да конечно
clickmaker (2008-08-18 18:29:00) [11]> [9] KirillRepin © (18.08.08 18:05)
DataSource & DataField назначены?
Для чего вообще тебе этот список нужен?
KirillRepin (2008-08-18 18:05:00) [12]подскажите пожалуйста, при таком заполнении неработает селект по списку.
выделяется последняя запись и другую выделить не возможно.
что делать?
KirillRepin (2008-08-18 17:08:00) [13]попробовал
while not StoredProc1.eof do
begin
DBListBox1.Items.Add(StoredProc1.Fields[0].AsString);
StoredProc1.Next;
end;
все получилось.
спасибо большое все за помошь!
stas (2008-08-18 17:05:00) [14]И если вам его нужно наполнять из базы, то можно использовать dbLookupListbox
stas (2008-08-18 17:03:00) [15]Конечно будет виснуть
while not StoredProc1.eof do
begin
DBListBox1.Items.Add(StoredProc1. Fields[0].AsString);
StoredProc1.Next;
end;
clickmaker (2008-08-18 17:02:00) [16]> тоже не работает "виснет"
теперь осталось выяснить, причем здесь Params, если "возвращает выборку" и почему виснет
KirillRepin (2008-08-18 16:56:00) [17]
> (TStoredProc is TDataSet) = True
>
> В чём проблема?
проблема в том что не отображается информация в DBListBox.
пробовал так:
StoredProc1.Active := True;
while not StoredProc1.eof do
begin
DBListBox1.Items.Add(StoredProc1.Params[0].AsString);
end;
тоже не работает "виснет"
Ega23 (2008-08-18 16:50:00) [18]
(TStoredProc is TDataSet) = True
В чём проблема?
clickmaker (2008-08-18 16:50:00) [19]while not sp.eof do begin
cmb.items.add
stas (2008-08-18 16:49:00) [20]так же, как и DataSet, а в чем вопрос?