Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.10.05;
Скачать: CL | DM;

Вниз

доступ к данным подчиненной таблицы   Найти похожие ветки 

 
kopernik21187 ©   (2008-08-18 14:50) [0]

вопрос такой:
есть две связанные таблицы ADOTable1 и ADOTable2,а также ADODataSet1...
ADOTable1-главная,ADOTable2-подчиненная....
доступ к определенному полю ADOTable1 осуществляется так
AdoDataSet1.RecNo:=n;
edit1.text:=AdoDataSet1.FieldByName("наименование" ).value;
а как скажите пожалуйста как точно так же получить доступ
к определенному полю в подчиненной таблице?
Заранее спасибо всем ответившим


 
Sergey13 ©   (2008-08-18 16:22) [1]

> [0] kopernik21187 ©   (18.08.08 14:50)
> доступ к определенному полю ADOTable1 осуществляется так
> AdoDataSet1.RecNo:=n;

Это не есть хорошо (мягко сказать). У таблицы должно быть ключевое поле по значению которого и нужно искать/позиционироваться на запись методом locate. Если таблицы связаны М-Д связью, то после позиционирования в главной таблице можешь так-же читать значение из подчиненной.
edit2.text:=ADOTable2.FieldByName("наименование" ).value;

Очтается выяснить зачем тебе AdoDataSet1 и как он связан с твоими ADOTable-ми?


 
oldman ©   (2008-08-18 16:38) [2]


> а как скажите пожалуйста как точно так же получить доступ
> к определенному полю в подчиненной таблице?


Для начала: не к полю, а к записи.
Ведь в подчиненной таблице их может быть несколько.
А если одна, locate тебе в руки...


 
kopernik21187 ©   (2008-08-21 12:07) [3]


> Очтается выяснить зачем тебе AdoDataSet1 и как он связан
> с твоими ADOTable-ми?

ты прав ADODataSet1 не понадобился....двумя ADOTable и без locate....
суть задачи заключалась в Memo вывести запись поля ADOTable1 и соответствующие ей подчиненные записи из ADOTable2
сделал так

procedure TForm1.Button2Click(Sender: TObject);
var i,j: integer;
begin

for i:=1 to DataModule2.ADOTable1.RecordCount do
    begin
    DataModule2.ADOTable1.RecNo:=i;
    Memo1.Lines.Add("Организация: "+DataModule2.ADOTable1.fieldbyname("Наименование").value);
      for j:=1 to DataModule2.ADOTable2.RecordCount do
           begin
              DataModule2.ADOTable2.RecNo:=j;
              Memo1.Lines.Add("ИНН: "+DataModule2.ADOTable2.fieldbyname("ИНН").Value);
           end;

    end;

end;


 
MsGuns ©   (2008-08-21 14:09) [4]

Вся эта дребедень в 3 реализуется простым запросом (TADOdataSet) с одной связкой и никакие нагромождения мастер-деталов не нужны


 
Anatoly Podgoretsky ©   (2008-08-21 15:22) [5]

Ох и поимеешь ты гемороя с RecNo

И вопрос, а зачем тогда тут нужен ADOTable1?


 
kopernik21187 ©   (2008-08-21 16:11) [6]


> Вся эта дребедень в 3 реализуется простым запросом (TADOdataSet)
> с одной связкой и никакие нагромождения мастер-деталов не
> нужны

ты не мог бы код привести?честно гря с ADODataSet еще не работал....

> Ох и поимеешь ты гемороя с RecNo

верно!мне срочно просто нада было.....
> И вопрос, а зачем тогда тут нужен ADOTable1?

как зачем?это ж главная таблица.....


 
MsGuns ©   (2008-08-21 16:29) [7]

Справка в помощь. По АДО в самих компонентах, по SQL - в дельфишной Local SQL
Вполне исчерпывающе.


 
Anatoly Podgoretsky ©   (2008-08-21 16:54) [8]

> kopernik21187  (21.08.2008 16:11:06)  [6]

Это да, но по коду в ней может быть только одна запись.



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

Текущий архив: 2008.10.05;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.006 c
2-1219895591
snake-as
2008-08-28 07:53
2008.10.05
Печать картинок


2-1219495279
Drone
2008-08-23 16:41
2008.10.05
Вопрос относительно объектов


11-1194225257
nsvi
2007-11-05 04:14
2008.10.05
Куда пропал OnEndEditLVItem?


15-1218210229
Eraser
2008-08-08 19:43
2008.10.05
Как подарить лицензию?


2-1219988308
Yury
2008-08-29 09:38
2008.10.05
свой тип





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский