help with vb and access

sookaa

Member
Oct 9, 1999
155
0
0
'm having trouble with what should be a very simple bit of
scripting in Visual Basic....The client, wanted a simple database with automated forms to track survey results. Unfortunately, the survey exists in two forms - long, and
short. The client wants a student to be able to page through the records and have the form automatically change to represent the survey type. Naturally, we must keep the current record focused when changing forms. That's easy, the tricky stuff happens when inserting a new record.

my problem is that this database is intended to collect survey results from two different surveys, (a long and a short form). The client eventually wishes to be able to analiyse results from both query types together, or each type separately, which is why they have to be tracked in the same database.
The simplest solution would have been to create one form to add and edit records, with a tab control that would expose the long-form questions, (all of the fields on the short form survey are common to the long-form survey), but unfortunatley, the questions do not appear in the same order on both surveys, and the client wanted the input forms to look as much as possible like the original survey.

I had hoped to get around this with an onCurrent event that checks the form length field and, if necessary, opens the current record in the other form. a similar script would be bound to the afterUpdate handler on the form length control.

This works pretty well until you encounter a new record, and my experimenting with the addNew and moveLast commands have failed miserably. The only documentation I can find in the help files shows examples using recordsets and the bookmark object from Access97, (northwind.mdb), and they don't seem to work at all in Access2000.
sample code as follows:

<!-- VB code follows -->
Option Compare Database

Private Sub Form_Current()
Dim frm As Form
Set frm = Forms.shortFormSurvey
Dim varCurrentRecord As Long
If (Me!formType = &quot;long&quot Then
DoCmd.OpenForm &quot;longFormSurvey&quot;, acNormal, , , acFormEdit,
acWindowNormal
If frm.NewRecord = False Then
varCurrentRecord = frm.CurrentRecord
DoCmd.GoToRecord acDataForm, &quot;longFormSurvey&quot;, acGoTo, varCurrentRecord
Else:
DoCmd.GoToRecord acDataForm, &quot;longFormSurvey&quot;, acLast
Rem even if the previous line was executed properly, it's not what I want - I want to focus a
Rem new record but acNewRecord fails to work at all
End If
End If
End Sub
Private Sub Form_LostFocus()
DoCmd.Close acForm, &quot;shortFormSurvey&quot;
End Sub
Private Sub formType_AfterUpdate()
Dim Form As Form
Set frm = Forms.shortFormSurvey
Dim varCurrentRecord As Long
If (Me!formType = &quot;long&quot Then
DoCmd.OpenForm &quot;longFormSurvey&quot;, acNormal, , , acFormEdit,
acWindowNormal
If frm.NewRecord = False Then
varCurrentRecord = frm.CurrentRecord
DoCmd.GoToRecord acDataForm, &quot;longFormSurvey&quot;, acGoTo, varCurrentRecord
Else:
DoCmd.GoToRecord acDataForm, &quot;longFormSurvey&quot;, acLast
End If
End If

End Sub

can anyone lend a hand?

thanks!
 

EagleKeeper

Discussion Club Moderator<br>Elite Member
Staff member
Oct 30, 2000
42,589
5
0
Have each record have an unique index and then request that index instead of using the Move Next/Last.
The Move Last depends on the results of the query and when you add a new record, the new record is not in the query set.
 
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |