Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.02.2010, 19:57   #1
Swatch
Форумчанин
 
Регистрация: 05.07.2009
Сообщений: 209
Печаль Проблема с формированием отчета

Доброе время суток!!! Подскажите пожалуйста, как можно решить следующую проблему с формированием отчета.
У меня в основной форме есть подчиненная, которая содержит большой обьем записей, источник- таблица. Я по кнопке формирую отчет, где выводятся только те записи, у которых в подчиненной форме проставлен флажок в поле "отметка". Их я пишу в другую таблицу, которая и служит источником данных для отчета. Проблема в том, что когда я запускаю формирование отчета в первый раз, все работает. Но если закрыть его и в форме отметить другие записи, то отчет выйдет уже пустым. Пробовала и refresh, и requery, и repaint. Но может быть не там ставила эти команды?
Private Sub Prosmotr_Click()
Dim spdet, rstDet As Recordset
Me.КР_СписокДеталей.Form.Requery
Set spdet = Me.КР_СписокДеталей.Form.RecordsetC lone
DoCmd.RunSQL "delete * from КР_Детали"
Set dbs = CurrentDb
Set rstDet = dbs.OpenRecordset("КР_Детали")
Do Until spdet.EOF
If spdet!Отметка = True Then
rstDet.AddNew
rstDet!IDKR = Me!NomKR
rstDet!PutDet = spdet!Путь
rstDet!ObozDet = spdet!Обозначение
rstDet!NaimDet = spdet!Наименование
rstDet!Marshrut = spdet!Маршрут
rstDet!NormaNTD = spdet!НормаНТД
rstDet!Kolvo = spdet!Колво
rstDet.Update
End If
spdet.MoveNext
Loop
rstDet.Close
DoCmd.OpenReport "КР_КартаРазрешенияТМЦ", acViewPreview
End Sub
Swatch вне форума Ответить с цитированием
Старый 25.02.2010, 00:32   #2
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

Здравствуйте Swatch.
не вникая в конструкцию, мне кажется если в код добавить
Код:
Set dbs = CurrentDb
Set rstDet = dbs.OpenRecordset("КР_Детали")

me.Recordset.MoveFirst
 rstDet.MoveFirst
отчёт не будет "выходить пустым"

И ещё, конструкция выглядела бы значительно лучше если бы заполнялась таблица "КР_Детали" не перебором рекордсета, а выполнением одной строки SQL конструкции.

Евгений.

Последний раз редактировалось Teslenko_EA; 25.02.2010 в 00:39.
Teslenko_EA вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание отчета Deni55 Microsoft Office Excel 13 15.06.2009 14:53
Проблема с отрисовкой заголовка кросс-отчета FastReport4 madmech Общие вопросы Delphi 3 06.05.2009 17:54
Проблема с формированием запроса на выборку.. Tanuska___:) БД в Delphi 3 17.02.2009 16:31
Сохранение отчета Nikolaeva Общие вопросы Delphi 0 22.09.2008 11:24
проблема при создании отчета в QuickRep Алёна БД в Delphi 2 16.11.2007 11:01