Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.02.19;
Скачать: [xml.tar.bz2];

Вниз

Считывание значений из Table в Combobox   Найти похожие ветки 

 
John_Doe   (2006-02-04 10:13) [0]

Добрый день.
Проблема такая...
У меня есть ComboBox,элементы которого должны быть соответствующими значениями 2-го поля в некоторой таблице данных.

Реализовал это так:

procedure TfrmWare.FormShow(Sender: TObject);
var i: Word;
begin
 cbxStockSelect.Clear;
 dmTables.tblStocks.First;
 for i:=0 to  dmTables.tblStocks.RecordCount-1 do
   begin
    cbxStockSelect.Items.Add(dmTables.tblStocks.Fields.Fields[1].AsString);
    dmTables.tblStocks.Next;
   end;
  dmTables.tblStocks.First;
end;

Все обьекты типа TTable,и TDataSource я поместил в dmTables(DataModule),так как доступ к таблицам нужен из многих форм.
Но работает это медленно.
Могли бы вы подсказать,как это можно реализовать быстрее.
Есть ли такое св-во у TTable,которое присвоив ComboBox.Items,я бы сразу перенес значения всех ячеек некоторого поля?
Или может предложите что-то потимальнее.
Заранее спасибо.


 
YurikGL ©   (2006-02-04 10:17) [1]

Пользуйся ehLib.
Там есть DBLookupComboboxEh


 
John_Doe   (2006-02-04 12:16) [2]

Эх...
Что-то я не разобрался.
"DBLookupComboboxEh" такого компанента не нашел,нашел просто "DBLookupComboboxEh".


 
John_Doe   (2006-02-04 13:38) [3]

Ага...
Сделал,и все отлично показывает.
Но теперь другая проблема.

У меня задание такое:
2 таблицы Stock,и Ware.
Есть DBLookupCombobox,и в нем связав все,я получил нужный результат.
Я там выбираю название склада из поля "Name" таблицы Stock.
И мне надо чтоб в гриде,появлялись все товары этого склада.
Для этого я во второй таблице - Ware,указал связующее поле "StockNo"(номер склада),и связал его с полем "#" таблицы Stock.
Но теперь,после того как использовал DBLookupCombobox,когда пытаюсь связать 2 таблицы,он мне выдает:

Exception EDatabaseError in module Ticaret.exe at 000915BD.

Circular datalinks are not allowed.

Access violation at address 7C918FEA in module "ntdll.dll". Write of address 00000010.


Что не так?


 
YurikGL ©   (2006-02-04 15:00) [4]


> Circular datalinks are not allowed.

Переводим на русский язык. :)


 
Desdechado ©   (2006-02-04 16:36) [5]

ты попытался в лукапе сослаться дважды на одну таблицу



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.02.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.052 c
1-1137681618
beglec
2006-01-19 17:40
2006.02.19
TSocket in Delphi 7 как их подключить?


15-1138377336
TUser
2006-01-27 18:55
2006.02.19
Управление памятью


3-1135345400
kull
2005-12-23 16:43
2006.02.19
Как работать с BLOB в udf?


2-1138628089
Neo Trinitron
2006-01-30 16:34
2006.02.19
Иконки зарегистрированных типов


2-1139037209
John_Doe
2006-02-04 10:13
2006.02.19
Считывание значений из Table в Combobox





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский