Method / Data not found, IBM Mainframe GUI/macro

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • solrium
    New Member
    • Jun 2007
    • 3

    Method / Data not found, IBM Mainframe GUI/macro

    Good morning,
    Thanks in advanced.... and

    Here are the basics:

    VB 6.3 on W2K,
    Using for WRQ Reflections for IBM (v 13.0)
    Visual Basic Editor (built into the above mainframe)

    - As most stories go, a guy created a GUI as a macro using VB and saved everything under the shared folder for our clients' server, which then was deleted. Since he saved it as a macro it saved the .rsf file - but did not save any of the modules, or forms, that came with it... and now he's no longer with the company.

    So, about a month ago I decided to copy & paste over the files that I had access too - never thinking I should've just exported the .cls and .frm files (d'oh!) ... anyway, I have all the code, and I've rebuilt the GUI creating the objects based on the names from the actual code.... so, Method or Data member not found error would mean that I'm not naming things right... 'cept, they are named correctly, I think.

    Design:

    main type (name)

    1 form (MainMenu.frm)
    4 modules (eagle, main, netview, tso)
    1 class module ( OperatorID )

    just giving the few in the example, once I figure those out I can pass the fix over the other objects (quiet a few of them) - and mind you, I know he didn't follow standard naming what-have-you... but hey... I'll fix that once I get it running again!

    main objects (names)

    MultiPage (MultiPage1, MultiPage2)
    TextBox (OperatorIDBox, FrequentIDBox)
    OptionButton (SLRButton, BIButton)
    CheckBox (TestBox)
    CommandButton (UnlockButton, OPIDClearButton )


    Here is the main code for the form, not the modules. The application loads on full compile, but then crashes when attempting to use any of the controls (ie: UnlockButton_Cl ick() gives above error, even with the correct name, even if I delete and rebuilt the block by double clicking from the design element)


    I have a sneaky feeling I'm missing some sort of reference file... unfortunately the IBM system only lets me save the file as a .rfs under a shared directory.

    Any help would be appreciated - although I answer phone calls (tech support /sigh) for a living, I volunteered to document the code thinking "hey when I get out of school I'll have some technical writing experience..".. . now that it stopped working due to some profile changes they did on our Citrix server, I was handed the project with expectation of re-creating the GUI.

    I got it to load, and connect, and read the password from a file. So now if I can just figure out why it's saying method/class not found...


    thanks again

    - edit: code below, seems there's a size limit to posts..
    Last edited by solrium; Jun 19 '07, 02:38 PM. Reason: moving code to see if fixes non-view
  • solrium
    New Member
    • Jun 2007
    • 3

    #2
    Code:
    Private Sub BIButton_Change()
        If BIButton.Value Then
            TestBox.Enabled = False
        Else
            TestBox.Enabled = True
        End If
    End Sub
    
    Private Sub FaceSheetBox_Change()
        If FaceSheetBox.Value Then
            SLRFaceSheetButton.Enabled = True
            BIFaceSheetButton.Enabled = True
            LICHFaceSheetButton.Enabled = True
            SLRFaceSheetButton.Value = True
            MedicalRecordsBox.Enabled = True
        Else
            SLRFaceSheetButton.Enabled = False
            BIFaceSheetButton.Enabled = False
            LICHFaceSheetButton.Enabled = False
            MedicalRecordsBox.Enabled = False
            SLRFaceSheetButton.Value = True
            SLRFaceSheetButton.Value = False
        End If
    End Sub
    
    Private Sub LICHFaceSheetButton_Change()
        If LICHFaceSheetButton.Value Then
            MedicalRecordsBox.Enabled = False
            MedicalRecordsBox.Value = False
        Else
            MedicalRecordsBox.Enabled = True
        End If
    End Sub
    
    Private Sub OPIDClearButton_ButtonClick()
        FrequentIDBox.ListIndex = -1
        OperatorIDBox.Text = ""
        SLRButton.Value = True
        TestBox.Value = False
    End Sub
    
    Private Sub AccountClearButton_Click()
        UserList.ListIndex = -1
        ResetButton.Visible = False
        UnsuspendBox.Visible = False
        UnsuspendBox.Value = False
        SearchButton.Visible = True
        UserList.Clear
        UserList.Enabled = False
        Label10.Enabled = False
        UserIDBox.Value = ""
        FirstNameBox.Value = ""
        LastNameBox.Value = ""
        MainMenu.MultiPage2.Enabled = True
    End Sub
    
    Private Sub FrequentIDBox_Click()
        OperatorIDBox.Text = FrequentIDBox.List(FrequentIDBox.ListIndex, 1)
        
        If FrequentIDBox.List(FrequentIDBox.ListIndex, 2) = "STL" Then
            SLRButton.Value = True
        Else
            BIButton.Value = True
        End If
        
        TestBox.Value = FrequentIDBox.List(FrequentIDBox.ListIndex, 3)
        UnlockButton.SetFocus
    End Sub
    
    'Private Sub MultiPage1_Click(ByVal Index As Long)
    '    FrequentIDBox.ListIndex = -1
    '    UserList.ListIndex = -1
    ' End Sub
    
    Private Sub OperatorIDBox_Change()
        OperatorIDBox.Text = UCase(OperatorIDBox.Text)
    End Sub
    
    
    
    Private Sub PrinterClearButton_Click()
        PrinterResetButton.Visible = False
        PrinterSearchButton.Visible = True
        MainMenu.Label19.Enabled = False
        MainMenu.SelectedPrinterBox.Enabled = False
        MainMenu.Label18.Enabled = False
        MainMenu.PrinterStatusBox.Enabled = False
        SelectedPrinterBox.Text = ""
        PrinterStatusBox.Text = ""
        PrinterIDBox.Text = ""
        PrinterIDBox.Enabled = True
        FaceSheetBox.Value = False
        FaceSheetBox.Enabled = True
        FaceSheetLabel.Visible = False
        Label17.Enabled = True
        MedicalRecordsBox.Value = False
    End Sub
    
    Private Sub PrinterResetButton_Click()
        If Not Session.Connected Then
            Session.Connect
        End If
        
        With Session
            If Not MainMenu.FaceSheetBox.Value Then
                Call AccessTSO
                Call AccessVPS
    
                    .TransmitANSI "1"
                    Call SendPrinterID(MainMenu.PrinterIDBox.Text)
                    .TransmitTerminalKey rcIBMEnterKey
                    .WaitForEvent rcKbdEnabled, "120", "0", 1, 1
                    .WaitForDisplayString "REACTIVATE", "1", 21, 13
            
                    ' reactivate first
                    .TransmitANSI "14"
                    .TransmitTerminalKey rcIBMEnterKey
                
                    ' then stop / start a few times
                    For i = 1 To 5
                        .TransmitANSI "4"
                        .TransmitTerminalKey rcIBMEnterKey
                        .TransmitANSI "f"
                        .TransmitTerminalKey rcIBMEnterKey
                        .TransmitANSI "3"
                        .TransmitTerminalKey rcIBMEnterKey
                    Next i
                    
                    .TransmitANSI "3"
                    .TransmitTerminalKey rcIBMEnterKey
                    
                    
                    .TransmitTerminalKey rcIBMPf3Key
                    .WaitForEvent rcKbdEnabled, "120", "0", 1, 1
                    .WaitForDisplayString "COMMAND", "1", 2, 2
            
                    Call UpdateVPSPrinterStatus
                
                    UpdateStatus ("Reset VPS printer " & MainMenu.SelectedPrinterBox.Text & ".")
                    Call AccessMainMenu
            Else
                Call ResetFaceSheetStep1
                
                If UCase(MainMenu.PrinterStatusBox.Text) <> "ACQ" And Not MedicalRecordsBox.Value Then
                    UpdateStatus ("Printer still not ACQ")
    Dim Site As String
    If LICHFaceSheetButton.Value Then
        Site = "42"
    ElseIf Not MedicalRecordsBox.Value And SLRFaceSheetButton.Value Then
        Site = "5"
    ElseIf Not MedicalRecordsBox.Value And BIFaceSheetButton.Value Then
        Site = "48"
    Else
        Site = "33"
    End If
                    Call ResetFaceSheetStep2(Site)
                    Call ResetFaceSheetStep1
                End If
                
                If UCase(MainMenu.PrinterStatusBox.Text) <> "ACQ" And Not LICHFaceSheetButton.Value Then
                    UpdateStatus ("Printer still not ACQ")
                    Call ResetFaceSheetStep3(MainMenu.SelectedPrinterBox.Text)
                    Call ResetFaceSheetStep1
                End If
            End If
        End With
    End Sub

    Comment

    • solrium
      New Member
      • Jun 2007
      • 3

      #3
      And there's more, but I hope the idea comes through. Any of the above subs will give me the data/method error not found.. again, even if I delete the block and use the design-to-code double click sub creation method.

      Comment

      • danp129
        Recognized Expert Contributor
        • Jul 2006
        • 323

        #4
        I would comment all code and add a new button and see if it will call it's _click() function, if not then I'd start a new project in case something is corrupted and add code/import settings (connection settings/keyboard mappings?) a peice at a time. I have not used Reflection for a few years and it was version 9 back then connecting to an Definity G3r PBX.

        Comment

        • elisewildgeese
          New Member
          • Jun 2007
          • 1

          #5
          Originally posted by solrium
          Good morning,
          Thanks in advanced.... and

          Here are the basics:

          VB 6.3 on W2K,
          Using for WRQ Reflections for IBM (v 13.0)
          Visual Basic Editor (built into the above mainframe)
          ...- edit: code below, seems there's a size limit to posts..
          I sent you a Private Message about this. -e

          Comment

          • Killer42
            Recognized Expert Expert
            • Oct 2006
            • 8429

            #6
            Ignore me - just registering an interest in this thread.

            Comment

            Working...