function ValidateInteger (cValue, cFieldName, nAllowEmpty, nType, nAllowZero)
{
   var nError   = 0 ;
   var cMsg     = "" ;
   var nHighVal ;
   var nK ;
   var nValue ;

   if ( nType == 1 )
      nHighVal = new Number (255) ;
   else if ( nType == 2 )
      nHighVal = new Number (32767) ;
   else if ( nType == 3 )
      nHighVal = new Number (2147483647) ;
   else
      nHighVal = new Number (0) ;
      
   cValue = Trim (cValue) ; // In Trim.inc

   for ( nK = 0 ; nK < cValue.length ; nK++ )
      if ( cValue.charAt(nK) < '0' || cValue.charAt(nK) > '9' )
      {
         nError = 1 ;
         break ;
      }
  
   if ( cValue.length == 0 && nAllowEmpty == 1 ) 
      return true ;
      
   if ( cValue.length == 0 && nAllowEmpty != 1 ) 
      nError = 1 ;
      
   else if ( nError == 0 )
   {
      nValue = new Number (cValue) ;
   
      if ( nHighVal.valueOf() > 0 && nValue.valueOf() > nHighVal.valueOf() )
         nError = 1 ;
   
      if ( nValue.valueOf() == 0 && nAllowZero != 1 ) 
         nError = 1 ;
   }      
      
   if ( nError == 0 )
      return true ;
      
   if ( nHighVal.valueOf() > 0 && nAllowZero == 1 )   
      cMsg   = ", between 0 and " + nHighVal.valueOf() ;
      
   else if ( nHighVal.valueOf() > 0 && nAllowZero != 1 )   
      cMsg   = ", between 1 and " + nHighVal.valueOf() ;
      
   alert ( "The " + cFieldName + " must be NUMERIC" + cMsg ) ;
   return false ;     
}

