Microsoft KB Archive/103088

From BetaArchive Wiki
Knowledge Base


How to Determine If All Elements in an Array Are Empty

Article ID: 103088

Article Last Modified on 12/3/2003



APPLIES TO

  • Microsoft Visual FoxPro 3.0 Standard Edition
  • Microsoft FoxPro 2.0
  • Microsoft FoxPro 2.5b for MS-DOS
  • Microsoft FoxPro 2.5a
  • Microsoft FoxPro 2.5b
  • Microsoft FoxPro 2.5a



This article was previously published under Q103088

SUMMARY

To determine if an entire array is empty, you can use the function shown below.

NOTE: There isn't a FoxPro function written for this purpose. The EMPTY() function comes close, but it will not return a correct answer if an array element that is not the first element in the array is populated with data.

MORE INFORMATION

The following function will return a logical false if any element in the entire array is populated with anything other than .F.:

   FUNCTION aempty
   PARAMETERS aname
   FOR pass = 1 to ALEN(aname) STEP 1
   retval = EMPTY(aname(pass))
   IF retval
      LOOP
   ELSE
       RETURN retval
   ENDIF
   ENDFOR
                

This function takes a single parameter <arrayname>. The syntax to call this function is as follows:

   SET UDFPARMS TO REFERENCE
   DIMENSION x(10)
   x(5) = "junk"
   ? aempty(x)
                

NOTE: The elements in any array will initially be false (.F.) by default. Therefore, any element with a logical value of .F. is considered empty.


Additional query words: VFoxWin FoxDos FoxWin

Keywords: kbcode KB103088