![]() |
|
|
![]()
|
|
| ivanfr |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 1.4.2009 Репутация: нет Всего: нет |
Проблема такая: есть две связные таблицы схему можно посмотреть на рисунке
Ссылка на схему данных http://s2.ipicture.ru/uploads/20110310/RZDK9VHM.jpg используя ниже приведенный код я запишу данные в соответствующие столбцы, но так как у меня таблицы связные один ко многим, то данные запишутся отдельно каждые в свою таблицу и связи между ними не будет. А хотелось, чтобы в ячейку ФИО подставлялось значение из таблицы автоматом(чтобы связь была). Как исправить?
|
|||
|
||||
| Antimol |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 118 Регистрация: 28.7.2007 Где: Украина, Киев Репутация: 4 Всего: 4 |
Извини но не вчитывался в код. Я бы решил это 2-мя запросами, но сперва:
1. переименовал бы названия полей.(хотя бы транслитом) 2. Если мне не изменяет память Access ставит связи нормально (на против того что связано), тогда во второй таблице поле не ФИО работника, а его id (название немного вводит в заблуждение) Самое первое что приходит на ум: 1. если у нас поле в первой табл. id_fio_work - счетчик, тогда следует, иначе к П.2: 1.1. добавить новую запись 1.2. прочитать id последней записи 1.3. переходим на П.3. 2. если у нас поле в первой табл. id_fio_work не счетчик - тогда: 2.1. выбираем максимальный элемент id_fio_work 2.2. вставляем данные в первую таблицу 2.3. переходим на П.3. 3. С пункта 1 или 2 мы узнали id_fio_work 3.1. Вставляем с помощью запроса данные во вторую таблицу Данный пример работает стабильно при монопольном доступе, если пользователей много и они используют эту программу, может возникнуть ситуация когда нескольким пользователям вернется значение одного и того же id. По поводу ошибок:
может не AsString а Value, а если нужно чтобы было String, так IntToStr(temp_data_from_xls[2]) если нужно Integer перевести в String... Программа наверно для экспорта данных из Excel в Access --------------------
Лучшее спасибо это "+" к репутации. Мой блог: ИНФОРМАТИЗАЦИЯ, и mirsovetov.net. Написание программ, исправление ошибок, статьи.... |
||||
|
|||||
| ivanfr |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 1.4.2009 Репутация: нет Всего: нет |
Схема данных в бд http://s1.ipicture.ru/uploads/20110311/cVw4tCvD.jpg
Как быть? Это сообщение отредактировал(а) ivanfr - 11.3.2011, 14:02 |
|||
|
||||
| Antimol |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 118 Регистрация: 28.7.2007 Где: Украина, Киев Репутация: 4 Всего: 4 |
RecordCount - не всегда совпадает с id таблицы, про что свидетельствует сообщение об ошибке. можно попробовать так
--------------------
Лучшее спасибо это "+" к репутации. Мой блог: ИНФОРМАТИЗАЦИЯ, и mirsovetov.net. Написание программ, исправление ошибок, статьи.... |
||||
|
|||||
| ivanfr |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 1.4.2009 Репутация: нет Всего: нет |
Благодарю. Пока все работает как надо. Вопрос закрыт
|
|||
|
||||
| Antimol |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 118 Регистрация: 28.7.2007 Где: Украина, Киев Репутация: 4 Всего: 4 |
Пожалуйста
Проблему я вижу одну, при вставке в первую таблицу, не ясно на последнюю запись мы переходим, или остаемся на той же. Если переходим - все отлично. Если нет - привязка будет только к одному пользователю в первой таблица, на котором мы "стоим" в данный момент --------------------
Лучшее спасибо это "+" к репутации. Мой блог: ИНФОРМАТИЗАЦИЯ, и mirsovetov.net. Написание программ, исправление ошибок, статьи.... |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |