• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 423
  • Last Modified:

vb6 run time error '381' Invalid property array index.

When I run the code seen below, I get the Run Time error '381' Invalid property array index. The line the debugger points to is...
.fields("fo_rackType") = Me.cboRackType.ItemData(Me.cboRackType.ListIndex)

Any ideas on how to fix this error?  Thanks in Advance,
Here's the code...

Private Sub cmdInsert_Click()
    'take the current Zone that you are on, then make the endZone the
    'endZone of the new Zone.  Have the user pick tHe beginning zone and
    'make the end of the old zone the zone prior to the beginning of the
    'new zone
    
    Dim lngZoneNumb As Long
    Dim rowZoneRow As Integer
    Dim strZoneCode As String
    Dim strZoneLoc As String
    
    If Not rsZoneConfig.EOF Then
        If Not Trim(rsZoneConfig.fields("StartZoneCode")) = Trim(rsZoneConfig.fields("endZoneCode")) Then
            
            'flag that this PickZone Configuration has changed
            Me.cboPickZoneName.ItemData(Me.cboPickZoneName.ListIndex) = 1
            
            lngZoneNumb = rsZoneConfig.fields("ZoneNumber") + 1
            rowZoneRow = Me.grdZoneConfig.Row
            strZoneCode = Trim(rsZoneConfig.fields("endZoneCode"))
            strZoneLoc = Trim(rsZoneConfig.fields("endZoneLoc"))
            
            rsZoneConfig.MoveNext
            If Not rsZoneConfig.EOF Then
                rsZoneConfig.fields("ZoneNumber") = rsZoneConfig.fields("ZoneNumber") + 1
            End If
            
            With rsZoneConfig
                .AddNew
                .fields("ZoneNumber") = lngZoneNumb
                .fields("EndZoneCode") = strZoneCode
                .fields("EndZoneLoc") = strZoneLoc
                .fields("fo_building") = Me.cboBuilding.ItemData(Me.cboBuilding.ListIndex)
                [b].fields("fo_rackType") = Me.cboRackType.ItemData(Me.cboRackType.ListIndex)
[/b]                .fields("ZoneName") = Trim(Me.cboPickZoneName.Text)
                .fields("ZoneQty") = 0
                .fields("PacksNeeded") = 0
                .fields("UnitsNeeded") = 0
            End With
            
            'reset the Zone numbers
            rsZoneConfig.MoveNext
            Dim icount As Long
            icount = lngZoneNumb + 1
            While Not rsZoneConfig.EOF
                rsZoneConfig.fields("ZoneNumber") = icount
                rsZoneConfig.MoveNext
                icount = icount + 1
            Wend
    
            rsZoneConfig.Sort = "ZoneName, fo_building, fo_rackType, ZoneNumber"
            
            Me.grdZoneConfig.Refresh
            
            Me.grdZoneConfig.Row = rowZoneRow + 1
            Call grdZoneConfig_ButtonClick(1)
        Else
            MsgBox "You can not insert a Zone Here", vbExclamation, "Pick Zone Configuration"
        End If
    End If
End Sub

Open in new window

0
tesla764
Asked:
tesla764
  • 3
  • 2
1 Solution
 
GrahamSkanCommented:
Note that ListIndex will be -1 if nothing is selected, so will not be an index into the itemdata array,
0
 
tesla764Author Commented:
Hi Graham,
  I'm not sure what you mean by "Code put into code box, but I now see that the line was highlighted in the text." Did you change or provide something?

Your info about the listbox being -1 is helpful.
0
 
tesla764Author Commented:
Thanks for the explanation, I didn't know that.  I will continue this tomorrow. Will you be available for contact?
0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 
GrahamSkanCommented:
There is no guarantee on this forum that any particular expert will be available. However as more comments are applied, the question becomes less visible to the other contributors. So, in effect, you are probably stuck with me anyway.
0
 
advfinanceCommented:
Not true, I'm here too! But your man Graham has got this covered.

--
Chris
0
 
tesla764Author Commented:
Sorry I haven't responded just yet. I will soon. I have been working on other problems that have arisen.
Thanks for you patience.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now