Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Одновременное копирование основной записи и соответствующих ей записей из подчиненной таблицы
 
 автор: sigmak88   (28.04.2010 в 09:34)   личное сообщение
 
 

Дано: две связанный таблицы. "Операции" - главная, "Операции_подробно" - подчиненная. Необходимо скопировать запись из табл. "Операции " с соответствующими записями из табл. "Операции_подробно". Есть верси, как это можно сделать одним запросом, а не поэтапно?

  Ответить  
 
 автор: час   (28.04.2010 в 10:36)   личное сообщение
 
 

А куда скопировать....
======================
Вообще то
В один запрос - можно несколько взаимосвязанных таблиц разместить....указав связи.... и нужные поля
Попробуйте ....

  Ответить  
 
 автор: sigmak88   (28.04.2010 в 12:38)   личное сообщение
 
 

просто создать копию в "Операции" и "Операции подробно"

  Ответить  
 
 автор: час   (28.04.2010 в 12:43)   личное сообщение
 
 


просто создать копию в "Операции" и "Операции подробно"

АААААААААА тада читай ниже

  Ответить  
 
 автор: Анатолий (Киев)   (28.04.2010 в 11:05)   личное сообщение
 
 

Такую операцию нужно делать в два этапа.
1. Продублировать главную и запомнить значение счетчика новой записи. Добавлять лучше через Recordset, где можно надежно определить значение счетчика.
2. Зная старое и новое значение счетчика сформировать и выполнить запрос на добавление подчиненных или, если записей немного, то удобнее добавить их также через Recordset.

  Ответить  
 
 автор: sigmak88   (28.04.2010 в 14:07)   личное сообщение
 
 

Спасибо большое за совет, примерно так и сделал, только чуть более извращенно))
чтоб не создавать тему отдельно, подскажите пожалуйста, как бороться со следующей бедой: открыта форма на основе т."Операции", в нее внедрена подчиненная таблица "Операции_подробно". При добавлении записей запросом в табл. "операции_подробно" данные не обнавляются на экране до тех пор, пока таблицу не полистаешь (т.е. открыть другую запись - вернуься). есть ли возможность "обновить" страницу?

  Ответить  
 
 автор: час   (28.04.2010 в 14:43)   личное сообщение
 
 

на событие после обновления
Me.RecordSource = Me.RecordSource.

  Ответить  
 
 автор: sigmak88   (28.04.2010 в 15:20)   личное сообщение
 
 

попробывал, не срабатывает( можно подробней о испоьзовании Me.RecordSource ? а еще лучше, в каком учебнике эта штука встречается, с описанием?

  Ответить  
 
 автор: час   (28.04.2010 в 15:35)   личное сообщение
 
 

в интернете Me.RecordSource - это источник строк - записей формы
его обновляя поновой черпаем записи из таблицы.
попробуй те так же Refrech и Requery , но эффективнее всего - это конечно Me.RecordSource= Me.RecordSource
http://relib.com/forums/Topic887260-20-1.aspx
http://hiprog.com/index.php?option=com_content&task=view&id=45&Itemid=35

  Ответить  
 
 автор: sigmak88   (28.04.2010 в 15:54)   личное сообщение
 
 

Спасибо большое!

  Ответить  
 
 автор: Анатолий (Киев)   (28.04.2010 в 18:13)   личное сообщение
 
 

Если дублирование выполняется в форме, то добавлять новую запись."Операции" лучше в RecordsetClone формы. В конце операции (после добавления в "Операции_подробно"), зная ID новой записи, можно перейти на нее (например, методом:
Me.Recordset.FindFirst "[ID]=" & НовыйID
Вы увидите эту запись со всеми подчиненными и без Requery или изменения RecordSource.

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList