Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
ADEL() problem/bug/pain
Message
General information
Forum:
Visual FoxPro
Category:
Other
Miscellaneous
Thread ID:
00213854
Message ID:
00213873
Views:
22
>One of my fellow programmers has found a condition where the ADEL() causes an error to happen. He uses the following code:
>
>with thisform
>error
> dimension .lstnalcnsn.aitems[alen(.lstnalcnsn.aitems,1),2]
> .lstnalcnsn.numberofelements = alen(.lstnalcnsn.aitems,1)
>* Below is a strange situation: the commands boxed-in below work correctly.
>* The problem is that when the messagebox's are removed, the adel command will
>* result in a "subscript is outside defined range" error when there is only
>* one row left in the array. In summary, with messageboxes, works.... without
>* messageboxes, doesn't work. The workaround is to set the array elements to
>* .f. when there is only one row instead of issuing an adel command.
>*******************************************************************************
>*** messagebox(" alen lstnalcnsn aitems ="+str(alen(.lstnalcnsn.aitems))) ***
>*** messagebox(" lstnalcnsn listindex = "+str(.lstnalcnsn.listindex)) ***
>*** adel(.lstnalcnsn.aitems,.lstnalcnsn.listindex) ***
>*** if alen(.lstnalcnsn.aitems,1) > 1 ***
>*******************************************************************************
> if alen(.lstnalcnsn.aitems,1) > 1
> adel(.lstnalcnsn.aitems,.lstnalcnsn.listindex)
> dimension .lstnalcnsn.aitems[alen(.lstnalcnsn.aitems,1)-1,2]
> else
> .lstnalcnsn.aitems[1,1]=""
> .lstnalcnsn.aitems[1,2]=""
> endif
> .lstnalcnsn.numberofelements = .lstnalcnsn.numberofelements - 1
> .lstnalcnsn.refresh()
>endwith
>
>
>As he noted in his comments above when the message boxes are in place the code does not error, but when you take them out and try to adel() the last element in the array the program errors. He has since tried to program a work around for this situation. If anyone else has seen this before or can think of why his code is flawed, please respond.
>
>TIA

Brett,

From the looks of it, it seems like your trying to use ADEL() on an array that's a property. Is this correct? If so, try using a regular array and copying it to the property.

hth,
George

Ubi caritas et amor, deus ibi est
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform