CrackAttributes Method
Class: FTP_SERVICE
Internal method for converting file's attributes to human's format.
Object.CrackAttributes
Parameter
lcBuffer
Type Character
Direction Input
Example
See source code of method FTP_SERVICE::CrackFile()
See also
Expand/Collapse source code of procedure CrackAttributes Source Code
      LPARAMETERS INP lcBuffer
      LOCAL lcAttributes, lnValue
      lcAttributes = ''

      lnValue = (ASC(SUBSTR(lcBuffer, 1, 1)) * BYTE_1) + ;
                (ASC(SUBSTR(lcBuffer, 2, 1)) * BYTE_2) + ;
                (ASC(SUBSTR(lcBuffer, 3, 1)) * BYTE_3) + ;
                (ASC(SUBSTR(lcBuffer, 4, 1)) * BYTE_4) 

      DO CASE
         CASE BITTEST(lnValue, BIT_ATTRIBUTE_READONLY) 
              lcAttributes = lcAttributes + 'R'

         CASE BITTEST(lnValue, BIT_ATTRIBUTE_HIDDEN) 
              lcAttributes = lcAttributes + 'H'

         CASE BITTEST(lnValue, BIT_ATTRIBUTE_SYSTEM) 
              lcAttributes = lcAttributes + 'S'

         CASE BITTEST(lnValue, BIT_ATTRIBUTE_DIRECTORY) 
              lcAttributes = lcAttributes + 'D'

         CASE BITTEST(lnValue, BIT_ATTRIBUTE_ARCHIVE) 
              lcAttributes = lcAttributes + 'A'

         CASE BITTEST(lnValue, BIT_ATTRIBUTE_NORMAL) 
              lcAttributes = lcAttributes + 'N'

         CASE BITTEST(lnValue, BIT_ATTRIBUTE_TEMPORARY) 
              lcAttributes = lcAttributes + 'T'

         CASE BITTEST(lnValue, BIT_ATTRIBUTE_COMPRESSED) 
              lcAttributes = lcAttributes + 'C'

         CASE BITTEST(lnValue, BIT_ATTRIBUTE_OFFLINE) 
              lcAttributes = lcAttributes + 'O'
      ENDCASE

      RETURN lcAttributes