Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations biv343 on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Form not displayed correctly via Switchboard...

Status
Not open for further replies.

tEkHEd

IS-IT--Management
Jan 29, 2003
261
GB
HI..

I have created a switchboard via the wizard for each of my forms. I have a slight problem where if I press the button to bring up an "Add New Software" form, none of the components (i.e. buttons, combo boxes etc) are shown...

Anyone know why this is? If I open the form seperately, it is displayed correctly. I have also opened the form from different forms via a button and again the form is displayed correctly, so the error only occurs when using the switchboard, and it is only affecting this one form..

here is the code for the switchboard, which I haven't really amended...

Code:
Private Function HandleButtonClick(intBtn As Integer)
' This function is called when a button is clicked.
' intBtn indicates which button was clicked.

    ' Constants for the commands that can be executed.
    Const conCmdGotoSwitchboard = 1
    Const conCmdOpenFormAdd = 2
    Const conCmdOpenFormBrowse = 3
    Const conCmdOpenReport = 4
   ' Const conCmdCustomizeSwitchboard = 5
   ' Const conCmdExitApplication = 6
   ' Const conCmdRunMacro = 7
   ' Const conCmdRunCode = 8
   ' Const conCmdOpenPage = 9

    ' An error that is special cased.
    Const conErrDoCmdCancelled = 2501
    
    Dim con As Object
    Dim rs As Object
    Dim stSql As String

On Error GoTo HandleButtonClick_Err

    ' Find the item in the Switchboard Items table
    ' that corresponds to the button that was clicked.
    Set con = Application.CurrentProject.Connection
    Set rs = CreateObject("ADODB.Recordset")
    stSql = "SELECT * FROM [Switchboard Items] "
    stSql = stSql & "WHERE [SwitchboardID]=" & Me![SwitchboardID] & " AND [ItemNumber]=" & intBtn
    rs.Open stSql, con, 1    ' 1 = adOpenKeyset
    
    ' If no item matches, report the error and exit the function.
    If (rs.EOF) Then
        MsgBox "There was an error reading the Switchboard Items table."
        rs.Close
        Set rs = Nothing
        Set con = Nothing
        Exit Function
    End If
    
    Select Case rs![Command]
        
        ' Go to another switchboard.
        Case conCmdGotoSwitchboard
            Me.Filter = "[ItemNumber] = 0 AND [SwitchboardID]=" & rs![Argument]
            
        ' Open a form in Add mode.
        Case conCmdOpenFormAdd
            DoCmd.OpenForm rs![Argument], , , , acAdd

        ' Open a form.
        Case conCmdOpenFormBrowse
            DoCmd.OpenForm rs![Argument]

        ' Open a report.
        Case conCmdOpenReport
            DoCmd.OpenReport rs![Argument], acPreview

        ' Customize the Switchboard.
        Case conCmdCustomizeSwitchboard
            ' Handle the case where the Switchboard Manager
            ' is not installed (e.g. Minimal Install).
            On Error Resume Next
            Application.Run "ACWZMAIN.sbm_Entry"
            If (Err <> 0) Then MsgBox &quot;Command not available.&quot;
            On Error GoTo 0
            ' Update the form.
            Me.Filter = &quot;[ItemNumber] = 0 AND [Argument] = 'Default' &quot;
            Me.Caption = Nz(Me![ItemText], &quot;&quot;)
            FillOptions

        ' Exit the application.
        Case conCmdExitApplication
            CloseCurrentDatabase

        ' Run a macro.
        Case conCmdRunMacro
            DoCmd.RunMacro rs![Argument]

        ' Run code.
        Case conCmdRunCode
            Application.Run rs![Argument]

        ' Open a Data Access Page
        Case conCmdOpenPage
            DoCmd.OpenDataAccessPage rs![Argument]

        ' Any other command is unrecognized.
        Case Else
            MsgBox &quot;Unknown option.&quot;
    
    End Select

    ' Close the recordset and the database.
    rs.Close
    
HandleButtonClick_Exit:
On Error Resume Next
    Set rs = Nothing
    Set con = Nothing
    Exit Function

HandleButtonClick_Err:
    ' If the action was cancelled by the user for
    ' some reason, don't display an error message.
    ' Instead, resume on the next line.
    If (Err = conErrDoCmdCancelled) Then
        Resume Next
    Else
        MsgBox &quot;There was an error executing the command.&quot;, vbCritical
        Resume HandleButtonClick_Exit
    End If
    
End Function

Tks in adv..
 
Is the AddSoftware form DataEntry property set to yes....???

If not try it..

propably will work.

Grtz,

Kalin
 
I found that I had to go through the &quot;Switchboard Manager&quot; again and change the command behind the button from:

Open Form in Add Mode

to:

Open Form in Edit Mode

as soon as I did this the combo boxes etc re-appeared... thanks anyway.. :)
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top