| 
| 
 | Вопрос # 4 620/ вопрос открыт / | 
 |  Доброго времени суток, уважаемые эксперты! Я снова обращаюсь к вам за помощью. У меня 2 таблицы связанные друг с другом(один ко многим). И я через форму добавляю данные. Фото:
 http://pics.kz/s4/c6/0d/fc/c60dfc5e04f4ba12b9834be83c5f4146.jpg
 Но когда я нажимаю на кнопку, все поля полностью не заполняется. Я здесь  загрузил маленький видео ролик, посмотрите пожалуйста. http://files.gameworld.kz/ntcmrn71kv.html
 Заранее большое спасибо.
 А код у меня такой:
 Приложение:Переключить в обычный режим frmdolzhniki.ADOTable1.Insert;frmdolzhniki.ADOTable2.Insert;FrmDolzhniki.ADOTable2.FieldByName('Naimenovanie').AsString:=Frmprodatdolg.DBEdit1.Text;FrmDolzhniki.ADOTable2.FieldByName('Kolichesnvo').AsString:=Frmprodatdolg.Edit1.Text;FrmDolzhniki.ADOTable2.FieldByName('Cena').AsString:=Frmprodatdolg.DbEdit2.Text;FrmDolzhniki.ADOTable1.FieldByName('Fio').AsString:=Frmprodatdolg.DBEdit3.Text;FrmDolzhniki.ADOTable1.FieldByName('Adres').AsString:=Frmprodatdolg.Edit3.Text;FrmDolzhniki.ADOTable1.FieldByName('Domtel').AsString:=Frmprodatdolg.Edit4.Text;FrmDolzhniki.ADOTable1.FieldByName('Mobtel').AsString:=Frmprodatdolg.Edit5.Text; 
|  |   Вопрос задал: Ермаханов Айбек (статус: Посетитель)Вопрос отправлен: 28 сентября 2010, 18:05
 Состояние вопроса: открыт, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 6; последнее сообщение — 30 сентября 2010, 14:12; участников в обсуждении: 3. 
|   | Vic (статус: 1-ый класс), 30 сентября 2010, 12:10 [#1]:А по какому полю связаны эти таблицы? |  
|   | Ермаханов Айбек (статус: Посетитель), 30 сентября 2010, 12:44 [#2]:Vic: По полю Fio. Если есть ссылки на учебники, примеры где можно почитать как добавить запись двум связанным таблицам, не могли бы поделиться? |  
|   | Вадим К (статус: Академик), 30 сентября 2010, 13:24 [#3]:а в чем проблема? логично понятно, что нужно вначале в одну добавить, потом в другую. Логично, что вначале нужно добавить в ту таблицу, которая не требует полей другой таблицы, а потом получив id, можно добавить и во вторую. (наоборот - никак, разве что вначале добавить фиктивный id). В коде, который приведет в вопросе обе таблицы модифицируются одновременно. и вызовов
 FrmDolzhniki.ADOTable2.post;
 FrmDolzhniki.ADOTable1.post;
 я не вижу, а без них ничего не сохранится.
 Если я правильно понял Ваш код, то вам вначале нужно заполнить первую таблицу, а потом уже вторую, забрав с первой таблицы id.
 И второе, скорее всего, что должники будут повторятся, поэтому следует предусмотреть выбор должника либо добавление нового. А потом добавление ему "долга". Заполнять это на одной форме - как то не то.
 Галочка "подтверждения прочтения" - вселенское зло. |  
|   | Vic (статус: 1-ый класс), 30 сентября 2010, 13:48 [#4]:это не правильно у таблицы 1 должно быть ключевое поле (первичный ключ)
 по этому полю и надо связать обе таблицы
 в таблице 2 должно быть поле внешнего ключа
 допустим в таблице 1 поле id
 в таблице 2 id_tbl1
 и прежде чем заполнить 2 таблицу надо вначале заполнить 1-ю
 считать значение id
 а затем уже заполнять 2-ю таблицу
 |  
|   | Ермаханов Айбек (статус: Посетитель), 30 сентября 2010, 14:12 [#6]:Спасибо Всем за ответы. Все сделано!!! |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |