Solved

Refresh subform on different tab control

Posted on 2004-08-24
4
980 Views
Last Modified: 2007-12-19
Greetings, Experts...can somebody please help me resolve this? I have a form with 23 tabs, each with a subform linked to its own SQL table. Let's just deal with two for now (subfrm_00_MAIN and subfrm_01_TopDogHouse). Using the following code, I'm trying to refresh the Record_Number of the subform on the second tab, and see it when I click on that tab. This works great if I close the form and reopen, but I get Run-time error '3021': no current record when clicking the 2nd tab. I've tried for a day to resolve this, but can't seem to dial it in. Here's the code:

Private Sub cmdNew_Click()
On Error GoTo Err_cmdNew_Click
    Dim strSQL As String

    DoCmd.GoToRecord , , acNewRec
           
    DoCmd.SetWarnings False
   
       Me.Record_Number.Value = Format(Now(), "mmddhhnnss")
        strSQL = "INSERT INTO dbo_T_01TopDogHouse (Record_Number) VALUES ('" & Me.Record_Number.Value & "');"
        DoCmd.RunSQL strSQL
       
    DoCmd.SetWarnings True
    Me.Record_Date.SetFocus

Exit_cmdNew_Click:
    Exit Sub

Err_cmdNew_Click:
    MsgBox Err.Description
    Resume Exit_cmdNew_Click
   
End Sub
----------------------------------------------
Private Sub TabCtl0_Change()
     
     Select Case Me.TabCtl0.Value
        Case 0
            Me.subfrm_00_MAIN.Form.RecordsetClone.FindFirst "Record_Number =" & Me.Record_Number
            Me.subfrm_00_MAIN.Form.Recordset.Bookmark = Me.subfrm_00_MAIN.Form.RecordsetClone.Bookmark
        Case 1
            Me.subfrm_01_TopDogHouse.Form.RecordsetClone.FindFirst "Record_Number =" & Me.Record_Number
            Me.subfrm_01_TopDogHouse.Form.RecordsetClone.Bookmark = Me.subfrm_01_TopDogHouse.Form.RecordsetClone.Bookmark
     End Select
   
End Sub
0
Comment
Question by:rsanglim
  • 2
4 Comments
 
LVL 3

Expert Comment

by:gemost
ID: 11883340
DId you try putting  the code in the change event in the subforms current event?
When I use subforms on tabs I have found that to get any recordsourse information the code needs to be either in the subform or I use code in the main form such as:

   intAns = Me.subformName.Form.Recordset.RecordCount
   If intAns = 0 Then
     What I want if there is no recordecount
   Else
      What I want if their is a recordcount
   End If

I also used an if statement in the change event instead of  a select case.

      If TabCtlPO = (1 or 2) Then
         What you want to do if the tab you are on equals this number
      End If

hope this helps
gemost :)
0
 

Author Comment

by:rsanglim
ID: 11884204
I tried the subforms current event, without success :(
My current code works great if I close and reopen, but I don't want to have to do that each time when inserting a new record.
0
 
LVL 39

Accepted Solution

by:
stevbe earned 500 total points
ID: 11885312
one way around this without any code is to put a hidden textbox on your main form that holds the current record_number and then use the control as the Master Linking field for all of your subforms, assuming they are all related to the same key. If you have many relationships then you could use m,ultiple hidden textboxes to let Access take care of sync'ng for you.

Steve
0
 

Author Comment

by:rsanglim
ID: 11886674
Steve...EXCELLENT! Simple and quick...don't know why I didn't see that earlier (what a knucklehead!).

...Thanks...Scott
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Overview: This article:       (a) explains one principle method to cross-reference invoice items in Quickbooks®       (b) explores the reasons one might need to cross-reference invoice items       (c) provides a sample process for creating a M…
Phishing attempts can come in all forms, shapes and sizes. No matter how familiar you think you are with them, always remember to take extra precaution when opening an email with attachments or links.
Basics of query design. Shows you how to construct a simple query by adding tables, perform joins, defining output columns, perform sorting, and apply criteria.
In Microsoft Access, learn the trick to repeating sub-report headings at the top of each page. The problem with sub-reports and headings: Add a dummy group to the sub report using the expression =1: Set the “Repeat Section” property of the dummy…

813 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

9 Experts available now in Live!

Get 1:1 Help Now