a3ERP – Quitar caracteres en nombres que no admite la AEAT

Al presentar determinados impuestos, como el 347, los nombres de clientes y proveedores no pueden contener peréntesis, comas, dos puntos,… con este script podemos arreglar todos los proveedores de golpe:

--SELECT CODPRO,NOMPRO,RAZON,nomfiscal FROM PROVEED

UPDATE PROVEED SET NOMPRO=REPLACE(NOMPRO,'(',' '), RAZON=REPLACE(RAZON,'(',' ')  ,NOMFISCAL=REPLACE(NOMFISCAL,'(',' ')
UPDATE PROVEED SET NOMPRO=REPLACE(NOMPRO,')',''), RAZON=REPLACE(RAZON,')','')    ,NOMFISCAL=REPLACE(NOMFISCAL,')','')
UPDATE PROVEED SET NOMPRO=REPLACE(NOMPRO,',',' '), RAZON=REPLACE(RAZON,',',' ')   ,NOMFISCAL=REPLACE(NOMFISCAL,',',' ')
UPDATE PROVEED SET NOMPRO=REPLACE(NOMPRO,':',''), RAZON=REPLACE(RAZON,':','')     ,NOMFISCAL=REPLACE(NOMFISCAL,':',' ')
UPDATE PROVEED SET NOMPRO=REPLACE(NOMPRO,'Á','A'), RAZON=REPLACE(RAZON,'Á','A')   ,NOMFISCAL=REPLACE(NOMFISCAL,'Á','A')
UPDATE PROVEED SET NOMPRO=REPLACE(NOMPRO,'É','E'), RAZON=REPLACE(RAZON,'É','E')   ,NOMFISCAL=REPLACE(NOMFISCAL,'É','E')
UPDATE PROVEED SET NOMPRO=REPLACE(NOMPRO,'Í','I'), RAZON=REPLACE(RAZON,'Í','I')   ,NOMFISCAL=REPLACE(NOMFISCAL,'Í','I')
UPDATE PROVEED SET NOMPRO=REPLACE(NOMPRO,'Ó','O'), RAZON=REPLACE(RAZON,'Ó','O')    ,NOMFISCAL=REPLACE(NOMFISCAL,'Ó','O')
UPDATE PROVEED SET NOMPRO=REPLACE(NOMPRO,'Ú','U'), RAZON=REPLACE(RAZON,'Ú','U')    ,NOMFISCAL=REPLACE(NOMFISCAL,'Ú','U')
UPDATE PROVEED SET NOMPRO=REPLACE(NOMPRO,'  ',' '), RAZON=REPLACE(RAZON,'  ',' ')    ,NOMFISCAL=REPLACE(NOMFISCAL,'  ',' ')

En el caso de clientes:

--SELECT CODCLI,NOMCLI,RAZON FROM CLIENTES

UPDATE CLIENTES SET NOMCLI=REPLACE(NOMCLI,'(',' '), RAZON=REPLACE(RAZON,'(',' ')  ,NOMFISCAL=REPLACE(NOMFISCAL,'(',' ')
UPDATE CLIENTES SET NOMCLI=REPLACE(NOMCLI,')',''), RAZON=REPLACE(RAZON,')','')    ,NOMFISCAL=REPLACE(NOMFISCAL,')','')
UPDATE CLIENTES SET NOMCLI=REPLACE(NOMCLI,',',' '), RAZON=REPLACE(RAZON,',',' ')  ,NOMFISCAL=REPLACE(NOMFISCAL,',',' ')
UPDATE CLIENTES SET NOMCLI=REPLACE(NOMCLI,':',''), RAZON=REPLACE(RAZON,':','')     ,NOMFISCAL=REPLACE(NOMFISCAL,':',' ')
UPDATE CLIENTES SET NOMCLI=REPLACE(NOMCLI,'Á','A'), RAZON=REPLACE(RAZON,'Á','A')     ,NOMFISCAL=REPLACE(NOMFISCAL,'Á','A')
UPDATE CLIENTES SET NOMCLI=REPLACE(NOMCLI,'É','E'), RAZON=REPLACE(RAZON,'É','E')   ,NOMFISCAL=REPLACE(NOMFISCAL,'É','E')
UPDATE CLIENTES SET NOMCLI=REPLACE(NOMCLI,'Í','I'), RAZON=REPLACE(RAZON,'Í','I')   ,NOMFISCAL=REPLACE(NOMFISCAL,'Í','I')
UPDATE CLIENTES SET NOMCLI=REPLACE(NOMCLI,'Ó','O'), RAZON=REPLACE(RAZON,'Ó','O')    ,NOMFISCAL=REPLACE(NOMFISCAL,'Ó','O')
UPDATE CLIENTES SET NOMCLI=REPLACE(NOMCLI,'Ú','U'), RAZON=REPLACE(RAZON,'Ú','U')    ,NOMFISCAL=REPLACE(NOMFISCAL,'Ú','U')
UPDATE CLIENTES SET NOMCLI=REPLACE(NOMCLI,'  ',' '), RAZON=REPLACE(RAZON,'  ',' ')    ,NOMFISCAL=REPLACE(NOMFISCAL,'  ',' ')

Deja una respuesta