* Converts a string to be printed with * True Type Font "PF Barcode 128" * Numerics and alphabetic (upper and lower case) * If a character is not valid it is replaced by a space * USE: _StrTo128B('Codigo 128 B') * RETURNS: Character * http://www.portalfox.com/index.php?name=News&file=article&sid=2600 FUNCTION StrTo128B(tcString) LOCAL lcStart, lcStop, lcRet, lcCheck, ; lnLong, lnI, lnCheckSum, lnAsc lcStart = CHR(104 + 32) lcStop = CHR(106 + 32) lnCheckSum = ASC(lcStart) - 32 lcRet = tcString lnLong = LEN(lcRet) FOR lnI = 1 TO lnLong lnAsc = ASC(SUBS(lcRet,lnI,1)) - 32 IF NOT BETWEEN(lnAsc,0,99) lcRet = STUFF(lcRet,lnI,1,CHR(32)) lnAsc = ASC(SUBS(lcRet,lnI,1)) - 32 ENDIF lnCheckSum = lnCheckSum + (lnAsc * lnI) ENDFOR lcCheck = CHR(MOD(lnCheckSum,103) + 32) lcRet = lcStart + lcRet + lcCheck + lcStop *--- Esto es para cambiar los espacios y caracteres invalidos lcRet = STRTRAN(lcRet,CHR(32),CHR(232)) lcRet = STRTRAN(lcRet,CHR(127),CHR(192)) lcRet = STRTRAN(lcRet,CHR(128),CHR(193)) RETURN lcRet ENDFUNC