CREATE OR REPLACE PROCEDURE sp_fdt_alta_ciudades_pago
(
    pch_ciudad char,
    pch_nombre varchar2
)
AS
    vti_flag number(1);
BEGIN
    vti_flag := 0;
    BEGIN
	    SELECT 1 INTO vti_flag FROM DUAL 
	    WHERE EXISTS (SELECT 1 FROM fdt_ciudades_pago
		    WHERE ciudad = pch_ciudad);
    EXCEPTION
        WHEN OTHERS THEN vti_flag := 0;	
    END;

    IF vti_flag = 1 THEN
		UPDATE fdt_ciudades_pago
		SET nombre = pch_nombre
		WHERE ciudad = pch_ciudad;
    ELSE
	    INSERT INTO fdt_ciudades_pago (ciudad, nombre)
	    VALUES (pch_ciudad, pch_nombre);
     END IF;


 	COMMIT;
END;
/
CREATE PUBLIC SYNONYM sp_fdt_alta_ciudades_pago FOR ADAM.sp_fdt_alta_ciudades_pago;
GRANT EXECUTE ON sp_fdt_alta_ciudades_pago TO adama;