SUBROUTINE LIMPA.UNICODE(RETORNOJSON) PRECISION 0 ************************************************************************** *Copyright (c) 2018 TecWebCg, * ************************************************************************** * * MODULE: LIMPA.UNICODE * AUTHOR: ALBERTO LEAL * VERSION: 1.0.0 * CREATED: 15/11/2018 * UPDATED: 15/11/2018 * * MAINTENANCE RECORD: * * FOR LL = 1 TO 31 RETORNOJSON = SWAP(RETORNOJSON,CHAR(LL)," ") ;*REMOVE NON PRINTIBLE CHARS NEXT LL RETORNOJSON = SWAP(RETORNOJSON,"\u00e1","a") RETORNOJSON = SWAP(RETORNOJSON,"\u00e0","a") RETORNOJSON = SWAP(RETORNOJSON,"\u00e2","a") RETORNOJSON = SWAP(RETORNOJSON,"\u00e3","a") RETORNOJSON = SWAP(RETORNOJSON,"\u00e4","a") RETORNOJSON = SWAP(RETORNOJSON,"\u00c1","A") RETORNOJSON = SWAP(RETORNOJSON,"\u00c0","A") RETORNOJSON = SWAP(RETORNOJSON,"\u00c2","A") RETORNOJSON = SWAP(RETORNOJSON,"\u00c3","A") RETORNOJSON = SWAP(RETORNOJSON,"\u00c4","A") RETORNOJSON = SWAP(RETORNOJSON,"\u00e9","e") RETORNOJSON = SWAP(RETORNOJSON,"\u00e8","e") RETORNOJSON = SWAP(RETORNOJSON,"\u00ea","e") RETORNOJSON = SWAP(RETORNOJSON,"\u00ea","e") RETORNOJSON = SWAP(RETORNOJSON,"\u00c9","E") RETORNOJSON = SWAP(RETORNOJSON,"\u00c8","E") RETORNOJSON = SWAP(RETORNOJSON,"\u00ca","E") RETORNOJSON = SWAP(RETORNOJSON,"\u00cb","E") RETORNOJSON = SWAP(RETORNOJSON,"\u00ed","i") RETORNOJSON = SWAP(RETORNOJSON,"\u00ec","i") RETORNOJSON = SWAP(RETORNOJSON,"\u00ee","i") RETORNOJSON = SWAP(RETORNOJSON,"\u00ef","i") RETORNOJSON = SWAP(RETORNOJSON,"\u00cd","I") RETORNOJSON = SWAP(RETORNOJSON,"\u00cc","I") RETORNOJSON = SWAP(RETORNOJSON,"\u00ce","I") RETORNOJSON = SWAP(RETORNOJSON,"\u00cf","I") RETORNOJSON = SWAP(RETORNOJSON,"\u00f3","o") RETORNOJSON = SWAP(RETORNOJSON,"\u00f2","o") RETORNOJSON = SWAP(RETORNOJSON,"\u00f4","o") RETORNOJSON = SWAP(RETORNOJSON,"\u00f5","o") RETORNOJSON = SWAP(RETORNOJSON,"\u00f6","o") RETORNOJSON = SWAP(RETORNOJSON,"\u00d3","O") RETORNOJSON = SWAP(RETORNOJSON,"\u00d2","O") RETORNOJSON = SWAP(RETORNOJSON,"\u00d4","O") RETORNOJSON = SWAP(RETORNOJSON,"\u00d5","O") RETORNOJSON = SWAP(RETORNOJSON,"\u00d6","O") RETORNOJSON = SWAP(RETORNOJSON,"\u00fa","u") RETORNOJSON = SWAP(RETORNOJSON,"\u00f9","u") RETORNOJSON = SWAP(RETORNOJSON,"\u00fb","u") RETORNOJSON = SWAP(RETORNOJSON,"\u00fc","u") RETORNOJSON = SWAP(RETORNOJSON,"\u00da","U") RETORNOJSON = SWAP(RETORNOJSON,"\u00d9","U") RETORNOJSON = SWAP(RETORNOJSON,"\u00db","U") RETORNOJSON = SWAP(RETORNOJSON,"\u00e7","c") RETORNOJSON = SWAP(RETORNOJSON,"\u00c7","C") RETORNOJSON = SWAP(RETORNOJSON,"\u00f1","n") RETORNOJSON = SWAP(RETORNOJSON,"\u00d1","N") RETORNOJSON = SWAP(RETORNOJSON,"\u0027","'") RETORNOJSON = SWAP(RETORNOJSON,"\u0026","&") FOR LL = 1 TO DCOUNT(RETORNOJSON,@AM) DADO$E = RETORNOJSON GOSUB RETIRA.CARACTER.ESPECIAL RETORNOJSON = DADO$E NEXT LL RETURN RETIRA.CARACTER.ESPECIAL: DAD="" FOR CAR=1 TO LEN(DADO$E) VLR=SEQ(DADO$E[CAR,1]) IF VLR < 32 OR VLR > 125 THEN GOSUB CHARS END ELSE DAD=DAD:DADO$E[CAR,1] END NEXT CAR DADO$E=DAD RETURN CHARS: CHR="" CHR<1> = "128ý129ý130ý131ý132ý133ý134ý135ý136ý137ý138ý139ý140ý141ý142ý143ý144ý147ý148ý149ý150ý151ý160ý161ý162ý163ý170ý176ý180ý186ý192ý193ý194ý195ý196ý199ý200ý201ý202ý205ý210ý211ý212ý213ý218ý220ý225ý226ý227ý231ý233ý234ý237ý243ý244ý245ý250" CHR<2> = "C ýu ýe ýa ýa ýa ýa ýc ýe ýe ýe ýi ýi ýi ýA ýA ýE ýo ýo ýo ýu ýu ýa ýi ýo ýu ýA ý ý ý. ýA ýA ýA ýA ý. ýC ýE ýE ýE ýI ýO ýo ý OýO ýU ýU ýa ýa ýa ýc ýe ýe ýi ýo ýo ýo ýu " LOCATE(VLR,CHR,1;PP) THEN DAD=DAD:TRIM(CHR<2,PP>) END RETURN RETURN