Code: Select all | Expand
FUNCTION MAISCULA() PARAMETERS VDBF IF VDBF = NIL ? "Informe o nome do DBF" QUIT ELSE IF !( "." $ VDBF ) VDBF := VDBF + ".DBF" ENDIF IF !FILE( VDBF ) ? "Arquivo " + VDBF QUIT ENDIF ENDIF SELE 1 USE ( VDBF ) IF !FILE( "DBF.OLD" ) COPY TO "DBF.OLD" ENDIF VQCAM := FCOUNT() CAR_OLD := { "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", " ", "‚", "¡", "¢", "£", "Æ", "ä", "ƒ", "ˆ", "Œ", "“", "–", "…", "Š", "", "•", "—", "„", "‰", "‹", "”", "", "‡", "¤", "µ", "", "Ö", "à", "é", "Ç", "å", "¶", "Ò", "×", "â", "ê", "·", "Ô", "Þ", "ã", "ë", "Ž", "Ó", "Ø", "™", "š", "€", "¥" } CAR_NEW := { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "A", "E", "I", "O", "U", "A", "O", "A", "E", "I", "O", "U", "A", "E", "I", "O", "U", "A", "E", "I", "O", "U", "€", "¥", "A", "E", "I", "O", "U", "A", "O", "A", "E", "I", "O", "U", "A", "E", "I", "O", "U", "A", "E", "I", "O", "U", "€", "¥" } DO WHILE ( 1->( !EOF() ) ) FOR I = 1 TO VQCAM VGET := FIELDGET( I ) IF VALTYPE( VGET ) = "C" VQTAM := LEN( ALLTRIM( VGET ) ) VPOE := .F. VTXT := "" FOR U = 1 TO VQTAM VSUB := SUBSTR( VGET, U, 1 ) VP := ASCAN( CAR_OLD, VSUB ) IF VP > 0 VCAR := CAR_NEW[VP] VPOE := .T. ELSE VCAR := VSUB ENDIF VTXT := VTXT + VCAR NEXT IF VPOE = .T. FIELDPUT( I, VTXT ) ENDIF ENDIF NEXT SKIP ENDDO RETURN NIL
Saludos.