Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как перевести форму на другую запись? / 25 сообщений из 29, страница 1 из 2
10.06.2004, 18:13:40
    #32556927
_Alexander_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
Есть электронный документ: заголовок- детали. После удаления всего документа форма переходит в режим создания новой записи со значениями по-умолчанию. Хотелось бы после удаления перейти на предыдущий документ, но методов Prev-Next я что-то не нашел. Подозреваю, что они все же где-то есть. Подскажите плз.
...
Рейтинг: 0 / 0
10.06.2004, 18:15:56
    #32556933
paparome
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
DoCmd.GoToRecord , , acPrevious

?
...
Рейтинг: 0 / 0
10.06.2004, 18:51:00
    #32557012
_Alexander_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
Спасибо! Как раз то что я хотел, но: после удаления текущей записи форма действительно мельком переходит на предыдущий документ, а потом сразу же предлагает создать новый. С чего бы это?
...
Рейтинг: 0 / 0
10.06.2004, 19:03:11
    #32557042
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
Код, где код??????
...
Рейтинг: 0 / 0
10.06.2004, 19:44:42
    #32557094
_Alexander_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
Кода как такового и нету. Удаляю нажатием стандартной кнопки, потом обрабатываю, что:

Private Sub Form_AfterDelConfirm(Status As Integer)

DoCmd.GoToRecord acDataForm, "ИмяФормы", acPrevious

End Sub
...
Рейтинг: 0 / 0
10.06.2004, 22:37:46
    #32557238
маяк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
_Alexander_
Код: plaintext
1.
2.
3.
4.
Private Sub Form_AfterDelConfirm(Status As Integer)

  DoCmd.GoToRecord acDataForm, "ИмяФормы", acPrevious
  
End Sub
после удаления текущей записи форма действительно мельком переходит на предыдущий документ, а потом сразу же предлагает создать новый.А он есть, этот предыдущий документ? Впрочем, если бы не было - она бы выматерила. Что значит "предлагает создать новый"? Переводит на пустую запись со звёздочкой? Попробуй удвоить DoCmd.GoToRecord acDataForm, "ИмяФормы", acPrevious, о результатах сообщи. Вообще она не должна так поступать. Посмотри, может у тебя ещё какая-нибудь пурга на это событие висит?
...
Рейтинг: 0 / 0
10.06.2004, 22:40:08
    #32557243
маяк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
_Alexander_Кода как такового и нету. Удаляю нажатием стандартной кнопки, потом обрабатываюТьфу, запутался. А зачем ты вешаешь этот Docmd.Gotorecord на AfterDelConfirm? Посади его на нажатие кнопки, а удаляй через SQL и потом Refresh. Чтобы перейти к нужной записи, можно заранее сделать bookmark. Немного через задницу, но работать будет. Причём довольно быстро. А твой прямой метод ничего не гарантирует.
...
Рейтинг: 0 / 0
14.06.2004, 10:54:44
    #32560077
_Alexander_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
>Что значит "предлагает создать новый"? Переводит на пустую запись со звёздочкой?
Совершенное верно. Звездочки правда никакой нет, но смысл тот же,- внешне все выглядит как будто я решил создать новую запись.

>Попробуй удвоить DoCmd.GoToRecord acDataForm, "ИмяФормы", acPrevious, о >результатах сообщи
Сообщаю: принципиально ничего не изменилось, только после удаления она мне мельком показывает не последню запись, а предпоследнюю.

>Посмотри, может у тебя ещё какая-нибудь пурга на это событие висит?
Всего одна строка: DoCmd.GoToRecord acDataForm, "ИмяФормы", acPrevious

>Посади его на нажатие кнопки, а удаляй через SQL и потом Refresh.
Ууу блин :( Столько геморроя (если учесть что в Аксэссе не шарю) из-за какого-то удаления... С моим уровнем знаний я боюсь залазить туда где ничо не знаю. Хотелось бы решить задачу "влоб".

П.С. Хотелось бы еще обработать ситуацию при удалении, когда удаляемая запись не последняя, а например первая. В этом случае фокус формы вроде нужно перемещать на предыдущую запись. Так от: как узнать, есть ли перед (после) текущей записью еще записи?
Заранее всем Огромный Сэнкс!
...
Рейтинг: 0 / 0
14.06.2004, 17:21:55
    #32560530
_Alexander_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
Ау, людиии!!! Не бросайте
...
Рейтинг: 0 / 0
14.06.2004, 17:36:31
    #32560549
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
Что стоит у формы в свойстве "Ввод данных"?
...
Рейтинг: 0 / 0
14.06.2004, 17:36:59
    #32560552
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
Само явление какое-то странное. Обычно Аксесс так себя не ведет, а сам переходит на следующую запись (именно следующую, а не последнюю и не новую).
...
Рейтинг: 0 / 0
14.06.2004, 17:54:09
    #32560577
_Alexander_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
DataEntry = No

>Само явление какое-то странное. Обычно Аксесс так себя не ведет, а сам >переходит на следующую запись (именно следующую, а не последнюю и не >новую).
Есть 3 записи, удаляю 3-ю. Удаляется, мелькает 2-я и сразу же показывается запись 3 из 3-х, заполненная значениеями по-умолчанию.
...
Рейтинг: 0 / 0
14.06.2004, 17:56:46
    #32560580
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
При удалении последней это нормально. Для нее следующей является новая. А при удалении других что происходит?
...
Рейтинг: 0 / 0
14.06.2004, 18:57:28
    #32560656
_Alexander_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
При удалении 3-й из 4-х после удаления текущей становится последняя, все Ок. А вот что делать с первой и последней?
...
Рейтинг: 0 / 0
14.06.2004, 19:30:23
    #32560671
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
перечитав все сначала, понял следующее
1) поведение "стандартно"
2) для возврата выбрано неудачное событие

слелать можно примерно следующее

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
 'на уровне переменных класса формы завести
 
Private pDelMode as Boolean

 'далее, в 
 
Private Sub Form_AfterDelConfirm(Status As Integer)

  pDelMode = True
   
End Sub

  

Private Sub Form_Current()
  If Me.NewRecord  And pDelMode Then
    DoCmd.GoToRecord acDataForm, Me.Name, acPrevious
  End If
End Sub
...
Рейтинг: 0 / 0
14.06.2004, 19:44:58
    #32560680
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
_Alexander_При удалении 3-й из 4-х после удаления текущей становится последняя, все Ок. А вот что делать с первой и последней?
Но все-таки - что происходит при их удалении?
...
Рейтинг: 0 / 0
14.06.2004, 19:45:25
    #32560682
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
вкралась очепятка
д.б.
Код: plaintext
1.
2.
3.
4.
5.
Private Sub Form_Current()
  If Me.NewRecord  And pDelMode Then
    DoCmd.GoToRecord acDataForm, Me.Name, acPrevious
    pDelMode=False
  End If
End Sub
...
Рейтинг: 0 / 0
14.06.2004, 20:31:53
    #32560724
маяк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
_Alexander_>Посади его на нажатие кнопки, а удаляй через SQL и потом Refresh.
Ууу блин :( Столько геморроя (если учесть что в Аксэссе не шарю) из-за какого-то удаления... С моим уровнем знаний я боюсь залазить туда где ничо не знаю. Хотелось бы решить задачу "влоб".По-хорошему у тебя два пути - находить источник этих переходов или писать код, чтобы после удаления возвращаться на нужную запись.
Для первого посоветую следующее: создай модель "сферической коровы в вакууме". Пустую базу, где есть только похожая форма. Удостоверься, что всё работает как надо, и потом уже ищи отличия.

Второй случай.
Ты можешь на момент "до удаления" определить, куда надо будет установить курсор? Делаешь ж=me.recordsetclone, в нём ставишь букмарк на нужном месте, дальше удаляешь, и делаешь me.bookmark=ж.bookmark. Всё.
...
Рейтинг: 0 / 0
14.06.2004, 20:57:59
    #32560748
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
Боюсь, что второй вариант маяка не покатит. Букмарк записи, которая стерта, это вроде бы стертый букмарк...
...
Рейтинг: 0 / 0
14.06.2004, 21:04:46
    #32560759
маяк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
Владимир СанычБоюсь, что второй вариант маяка не покатит. Букмарк записи, которая стерта, это вроде бы стертый букмарк...Ну так никто не предлагает на стёртую запись переходить, верно? Надо ведь уйти на другую, а она ещё не стёрта, кажется.
...
Рейтинг: 0 / 0
14.06.2004, 21:06:34
    #32560765
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
А. Дошло. :^)
...
Рейтинг: 0 / 0
14.06.2004, 21:41:22
    #32560782
маяк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
Владимир СанычА. Дошло. :^)Очень рад!
Оно работать-то будет?
...
Рейтинг: 0 / 0
14.06.2004, 21:48:04
    #32560788
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
Наверно. Если только ДО стирания программа сможет угадать, какую запись юзер НЕ сотрет.
...
Рейтинг: 0 / 0
15.06.2004, 03:20:07
    #32560894
маяк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
Владимир СанычНаверно. Если только ДО стирания программа сможет угадать, какую запись юзер НЕ сотрет.Вызывать букмаркинг при стирании ТЕКУЩЕЙ записи. Очевидно, в этот запуск этой процедуры юзер уже при всём желании никакую другую не сотрёт.
...
Рейтинг: 0 / 0
15.06.2004, 11:43:25
    #32561243
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перевести форму на другую запись?
Ха. А если он пометит и сотрет несколько?
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как перевести форму на другую запись? / 25 сообщений из 29, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]