Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не сохранять изменения в запросе при закрытии форм 
:(
    Опции темы
alexIrish
Дата 27.6.2007, 17:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 217
Регистрация: 26.1.2006
Где: Ireland, Dublin

Репутация: нет
Всего: нет



Если v подчиненной форме, источником записей которой является запрос, поменять дизайн запроса (применить фильтр или размеры полей поменять), тo как сделать что бы ети изменения нe сохранялись. И сообщениe "Сохранить... Dа,Нет) нe появлялось. При закрытиии Формы.
PM MAIL   Вверх
Akina
Дата 27.6.2007, 18:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



Код

DoCMD.Close ,,acSaveNo



--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
alexIrish
Дата 27.6.2007, 23:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 217
Регистрация: 26.1.2006
Где: Ireland, Dublin

Репутация: нет
Всего: нет



Не совсем понял:(
Код

Docmd.close ,,acSaveNo ' a gde ob'ect kotoryj zakryvaem?


Главная форма и так не сохраняет ничего. А если написать на событие Главная форма_Close
docmd.close Запрос,Имя запроса, acSaveNo, то все равно спрашивает сохранять макет запроса или нет

Может где то в параметрах выставить надо. 

а то придется програмно запросы с фильтрами делать вместо фильтра по выбранному.
PM MAIL   Вверх
bopoha
Дата 28.6.2007, 00:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1283
Регистрация: 10.5.2006
Где: Беларусь, Минск

Репутация: 21
Всего: 21



Не совсем понятно почему запрос на сохранение происходит....
Что ты такое делаешь? Код в студию!
PM MAIL WWW ICQ Skype GTalk   Вверх
alexIrish
Дата 28.6.2007, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 217
Регистрация: 26.1.2006
Где: Ireland, Dublin

Репутация: нет
Всего: нет



Dа ничего я нe делаю. Просто закрываю форму. на файлe скреен шот что бы было понятно.
Двойной клик по выбранному оператору - v подчиненной форме резыльтат. (Source object - Query)
для "ALL" vесь список. Так вот если v подчиненной формe поменять ширину полей или фильтр по
vыбранному знчнию, то при закрытии формы Аццесс спрашиваеt сохранить ли изменения макета в ЗАПРОСЕ. 
Вот весь коd на форму:
Код

Option Compare Database


Private Sub cmdCalendar_Click()
lblSelectDate.Visible = False
txtDate.Visible = True
DatePicker.Transparency = 220
Me.txtDate.SetFocus
DoCmd.OpenForm "datepicker"
End Sub

Private Sub cmdMain_Click()
DoCmd.Close acForm, "Operators", acSaveNo
End Sub

Private Sub Form_Close()
SaveWindowState Me.Name, Me
DoCmd.Close acQuery, "PAFormSource", acSaveNo
End Sub

Private Sub Form_Open(Cancel As Integer)
RestoreWindowState Me.Name, Me
txtDate.Visible = False
End Sub

Private Sub lstOperators_DblClick(Cancel As Integer)
txtDate.Visible = False
lblSelectDate.Visible = True
Dim qdf As QueryDef
Set qdf = CurrentDb.QueryDefs![PAFormSource]
If lstOperators.Value = "All" Then
    qdf.SQL = "SELECT SUM(PAFormQ.Locations) as [Visited Locations], SUM(PAFormQ.ItemsPicked) as [Picked Items]," _
        & " SUM(PAFormQ.[TO q-ty]) as [Number of TOs], PAFormQ.User, Format(PAFormQ.ConfirmDate,'ww') as [Week number] FROM PAFormQ " _
        & " Group By Format(PAFormQ.ConfirmDate,'ww'),PAFormQ.User;"
Else
    qdf.SQL = "SELECT SUM(PAFormQ.Locations) as [Visited Locations], SUM(PAFormQ.ItemsPicked) as [Picked Items]," _
        & " SUM(PAFormQ.[TO q-ty]) as [Number of TOs], PAFormQ.User, Format(PAFormQ.ConfirmDate,'ww') as [Week number] FROM PAFormQ WHERE (((PAFormQ.User)=""" & lstOperators.Column(0) & """)) Group By Format(PAFormQ.ConfirmDate,'ww'),PAFormQ.User;"
End If
sfDetails.SourceObject = "Query.PAFormSource"
End Sub



The work is not finished yet, just at start.
Проблема v том что если на запрос сохранить изменения или нет ответить "Да", то пропадает SQL
коd в запросе. Остается только "Селект;"
Если нет то все нормально.
PM MAIL   Вверх
bopoha
Дата 2.7.2007, 01:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1283
Регистрация: 10.5.2006
Где: Беларусь, Минск

Репутация: 21
Всего: 21



Во втором запросе у тебя ошибка. Поле PAFormQ.User используется для групировки. Соответственно необходимо использовать HAVING вместо WHERE. По этому может не сохраняться.
PM MAIL WWW ICQ Skype GTalk   Вверх
alexIrish
Дата 2.7.2007, 14:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 217
Регистрация: 26.1.2006
Где: Ireland, Dublin

Репутация: нет
Всего: нет



Спасибо, запроs поменял - проблема осталась.
Нужно что бы изменения макетa запроса нe сохаранялись. 
Можно конечно сделать Enable = False , но тогда, допустим фильтr v ручнию нe применишь.
А надо. 
А можно сделать что бы Source object dля субформы был нe запроs, а рекордсет на основе запроса? Нu именять чего там в рекордсете, а по закрытию формы рекордсет удаляется?
PM MAIL   Вверх
bopoha
Дата 2.7.2007, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1283
Регистрация: 10.5.2006
Где: Беларусь, Минск

Репутация: 21
Всего: 21



Тогда проще сделать подчиненную форму, режим отображения сделать табличный. И присваивай ей на здоровье любой запрос. И тебе не придется возиться с сохраняемыми запросами.

В любом случае, для того тобы запрос как подчиненный отработал он сохраняется после выполения процедуры. Т.е. перед закрытием он уже сохранен. Остатеся записать туда запрос, который был до изменений, при закрытии.
PM MAIL WWW ICQ Skype GTalk   Вверх
alexIrish
Дата 3.7.2007, 11:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 217
Регистрация: 26.1.2006
Где: Ireland, Dublin

Репутация: нет
Всего: нет



to bopoha:
По моему мы не понимаем друг друга. Проблема и так в подчиненой форме. И не в самом запросе, 
а в его макете. если в ней ручками раздвинуть поля (увеличить или уменьшить ширину поля таблицы, саб форма в табличном виде) или в контекстном меню сделать фильтр по выбранному значению, а потом закрыть главную форму, то выскакивает сообщение: Сохранить изменения в запросе ( заметьте не в форме и не в саб форме) или нет. если нет то все ОК, если да то см. выше.
 smile 

PM MAIL   Вверх
bopoha
Дата 4.7.2007, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1283
Регистрация: 10.5.2006
Где: Беларусь, Минск

Репутация: 21
Всего: 21



НИКОГДА у меня с табличными подчиненными формами небыло таких проблем. Попробовал повторить, подобной ситуации не возникло. Не там копаешь!
PM MAIL WWW ICQ Skype GTalk   Вверх
alexIrish
Дата 5.7.2007, 00:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 217
Регистрация: 26.1.2006
Где: Ireland, Dublin

Репутация: нет
Всего: нет



Вот пожалуйста, смотрите. На Мейн форме двойной клик на Оператор... отчет, остальные удалены.
Когда откроется форма следуйте инструкциям. Откроется субформа. Там раздвиньте поля вручную и закройте форму ( Бек то Мейн)
На запрос о сохранении ответьте утвердительно и снова откройте форму. 
Расскажите что вышло.

Хотя я вроде бы допер. У меня получился источник данных запрос из другого запроса. Хотя ...
Ну в общем смотрим, и не смеемся так как я не программист по профессии smile 

Присоединённый файл ( Кол-во скачиваний: 11 )
Присоединённый файл  Test.zip 107,83 Kb
PM MAIL   Вверх
bopoha
Дата 6.7.2007, 11:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1283
Регистрация: 10.5.2006
Где: Беларусь, Минск

Репутация: 21
Всего: 21



Понятное дело почему он спрашивает сохранять ли макет запроса. Т.к. он меняется.

Чтобы этого не происходило создай табличную форму, ей и будешь прописывать свой запрос.
Эту новую форму пропиши один раз как объект-источник у элемента управления sfDetails.
Менять же запрос будешь уже у подчиненной формы. Пример:
Код

Me.sfDetails.Form.RecordSource = "...."


При этом хранимый запрос тебе больше не нужен!

ЗЫ: Красивые формочки!
PM MAIL WWW ICQ Skype GTalk   Вверх
Dimbuch
Дата 6.7.2007, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 16.11.2006

Репутация: нет
Всего: нет



Да! Формы красивые!!!
PM WWW   Вверх
alexIrish
Дата 6.7.2007, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 217
Регистрация: 26.1.2006
Где: Ireland, Dublin

Репутация: нет
Всего: нет



Спасибо зa советы. Поменяю напишу.
Думаю вопрос исчерпан.

ПС. Dа простят меня модераторы. кто скачал пример - попробуйте запустить v рантайме.
У меня в рантайме когда календарик открываю вылетает ошибка и прекращается выполнение программы. Не могу отловить почему.

PM MAIL   Вверх
alexIrish
Дата 23.7.2007, 12:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 217
Регистрация: 26.1.2006
Где: Ireland, Dublin

Репутация: нет
Всего: нет



Sorry.
New topic created.

Это сообщение отредактировал(а) alexIrish - 23.7.2007, 13:09
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS Access"
Akina
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] и [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS Access | Следующая тема »


 




[ Время генерации скрипта: 0.0682 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.