powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Автономер и новая запись
14 сообщений из 14, страница 1 из 1
Автономер и новая запись
    #32872675
rulez22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Задача: программно создать новую запись с номером +1, вставить текущую дату-время, перейти на эту запись и показать в обновленном виде. Выполняется успешно но до уровня перехода на запись, т.е. она отображается в таком виде. Приходится тыкать на программную кнопку "предыдущая запись" и потом "следующая запись" и тогда видно обновление. Пытался делать Me.refresh, me.requery - не помогает. Все равно поле booking number пустое и поле ID имеет значение autonumber. Фотка приложена. Код на кнопку "следующая запись" такой:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
Private Sub tw_go_nextrecord_Click()
On Error Resume Next
Dim VN As Double
  VN = RBev!bookingnumber +  1 
  RBev.MoveNext
  If Not RBev.EOF Then
  Selectie = "SELECT * FROM maindata WHERE bookingnumber = " & RBev!bookingnumber
        Forms.dannie1.RecordSource = Selectie
  Else
     If MsgBox(" New record ? ", vbYesNo, " New record") = vbYes Then
        RBev.Index = "bookingnumber"
        r_search = "bookingnumber"
        RBev.MoveLast
        RBev.AddNew
        RBev!bookingnumber = VN
        RBev!bookingdate = Now()
        RBev.Update
        RBev.MoveLast
        Selectie = "SELECT * FROM dannie1 WHERE bookingnumber = " & RBev!bookingnumber
        Forms.dannie1.RecordSource = Selectie
        Forms.dannie1.clientname.SetFocus
     Else
       RBev.MoveLast
       Selectie = "SELECT * FROM dannie1 WHERE bookingnumber = " & RBev!bookingnumber
         Forms.dannie1.RecordSource = Selectie
         Forms.dannie1.clientname.SetFocus
     End If
  End If
End Sub
...
Рейтинг: 0 / 0
Автономер и новая запись
    #32872712
rulez22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
фотки тут
http://22.0catch.com/form1.gif - это при переходе на новую запись
http://22.0catch.com/form2.gif - это после отката назад и снова вперед, т.е. данные вставляются
...
Рейтинг: 0 / 0
Автономер и новая запись
    #32872721
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
код просто великолепный
индекс то зачем?
переменная VN объявлена типа double, хотя по идее должна быть Long
да и ваще... ;)
--------------
crazy about...
...
Рейтинг: 0 / 0
Автономер и новая запись
    #32872735
rulez22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
дак мне не шашечки, мне ехать.. Не профессионал в акцессе, главное чтобы работало..
...
Рейтинг: 0 / 0
Автономер и новая запись
    #32872766
Bagin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rulez22Пытался делать Me.refresh, me.requery - не помогает.Запомнить ID необходимой записи, сделать Forms.dannie1.RecordSource = Selectie, переход на нужную запись или просто переход на последнюю запись, если уверены, что она самая та
...
Рейтинг: 0 / 0
Автономер и новая запись
    #32872787
rulez22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А где и как именно в коде сделать это можно поподробнее пожалуйста?
...
Рейтинг: 0 / 0
Автономер и новая запись
    #32872837
Bagin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
там, где Вы пытались делать Me.refresh, me.requery, в самом конце кода
А обязательно делать RBev!bookingdate = Now() программно, может по-умолчанию сделать и не мучаться
И вот еще, или я не понимаю или как. Вместо:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
     If MsgBox(" New record ? ", vbYesNo, " New record") = vbYes Then
        RBev.Index = "bookingnumber"
        r_search = "bookingnumber"
        RBev.MoveLast
        RBev.AddNew
        RBev!bookingnumber = VN
        RBev!bookingdate = Now()
        RBev.Update
        RBev.MoveLast
        Selectie = "SELECT * FROM dannie1 WHERE bookingnumber = " & RBev!bookingnumber
        Forms.dannie1.RecordSource = Selectie
        Forms.dannie1.clientname.SetFocus
     Else
       RBev.MoveLast
       Selectie = "SELECT * FROM dannie1 WHERE bookingnumber = " & RBev!bookingnumber
         Forms.dannie1.RecordSource = Selectie
         Forms.dannie1.clientname.SetFocus
     End If
Можно сделать:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
     If MsgBox(" New record ? ", vbYesNo, " New record") = vbYes Then
        RBev.Index = "bookingnumber"
        r_search = "bookingnumber"
        RBev.MoveLast
        RBev.AddNew
        RBev!bookingnumber = VN
        RBev!bookingdate = Now()
        RBev.Update
     End If
     RBev.MoveLast
     Selectie = "SELECT * FROM dannie1 WHERE bookingnumber = " & RBev!bookingnumber
     Forms.dannie1.RecordSource = Selectie
     Forms.dannie1.clientname.SetFocus
     
...
Рейтинг: 0 / 0
Автономер и новая запись
    #32872871
rulez22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хм, сделал. Так же данные вставляет но не обновляется на экране. Опять приходится откатываться.
...
Рейтинг: 0 / 0
Автономер и новая запись
    #32872912
Bagin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приведите пожалуйста код
...
Рейтинг: 0 / 0
Автономер и новая запись
    #32873152
rulez22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как вы сказали так и сделал
Private Sub tw_go_nextrecord_Click()
Dim VN As Long
VN = RBev!bookingnumber + 1
RBev.MoveNext
If Not RBev.EOF Then
Selectie = "SELECT * FROM dannie1 WHERE bookingnumber = " & RBev!bookingnumber
Forms.dannie1.RecordSource = Selectie
Else
If MsgBox(" New record? ", vbYesNo, " New record") = vbYes Then
RBev.Index = "bookingnumber"
r_search = ""
RBev.MoveLast
RBev.AddNew
RBev!bookingnumber = VN
RBev!bookingdate = Now()
RBev.Update
End If
RBev.MoveLast
Selectie = "SELECT * FROM dannie1 WHERE bookingnumber = " & RBev!bookingnumber
Forms.dannie1.RecordSource = Selectie
End If
End Sub
...
Рейтинг: 0 / 0
Автономер и новая запись
    #32873178
Bagin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не вижу чего-то такого.
Может поместите свою базу на форум, оставив только то, что касается Вашего вопроса, чтобы посмотреть в действии.
...
Рейтинг: 0 / 0
Автономер и новая запись
    #32873192
Фотография GUESТ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а это что еще такое?

>:|


http://22.0catch.com/Nazi%20symbol%201.jpg
...
Рейтинг: 0 / 0
Автономер и новая запись
    #32873229
rulez22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 Bagin: могу закинуть файл целиком на почту. Если сообщите емайл на icq 47-58-00-25
...
Рейтинг: 0 / 0
Автономер и новая запись
    #32873317
rulez22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
может как-нибудь через букмарки можно?
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Автономер и новая запись
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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