26/10/2021 22:07:32 ***** ERROR DE SISTEMA: ***** ADMINISTRADOR ***** CLASE: covensol_cxc_cuentasxcobrar
METODO: ActualizarTasaReferencia
ERROR->:
Invalid query: ERROR: operator does not exist: character varying / integer
LINE 3: ...ECT (CASE WHEN fcontable<'2021-10-01' THEN (moneda/1000000) ...
^
HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
Whole query:
INSERT INTO aero_tasas_cambio (moneda,fcontable,cambio)
SELECT (CASE WHEN fcontable<'2021-10-01' THEN (moneda/1000000) ELSE moneda END) AS moneda, fcontable, cambio
FROM aero_kiu_transacciones t
INNER JOIN aero_monedas m ON t.moneda = m.codmon
WHERE codmon = 'USD'
AND codmon||'-'||fcontable NOT IN (
SELECT moneda||'-'||fcontable FROM aero_tasas_cambio
WHERE moneda = 'USD'
ORDER BY 1
)
GROUP BY moneda, fcontable, cambio
ORDER BY fcontable;
INSERT INTO covensol_tasas_cambio (tipcambio, codmon, fcontable, cambio)
SELECT 'BCV', (CASE WHEN fcontable<'2021-10-01' THEN (moneda/1000000) ELSE moneda END) AS moneda, fcontable, cambio
FROM aero_kiu_transacciones t
INNER JOIN aero_monedas m ON t.moneda = m.codmon
WHERE codmon = 'USD'
AND codmon||'-'||fcontable NOT IN (
SELECT codmon||'-'||fcontable FROM covensol_tasas_cambio
WHERE codmon = 'USD'
ORDER BY 1
)
GROUP BY moneda, fcontable, cambio
ORDER BY fcontable;
UPDATE cxc_factura f SET codmonref='USD',
tascamref = COALESCE((
SELECT COALESCE(cambio,1)
FROM covensol_tasas_cambio t
WHERE t.fcontable <= f.fecfact
ORDER BY fcontable DESC LIMIT 1
),1)
WHERE f.fecfact>='2021-01-01'
AND codmon!='USD'
AND codmon!='CUC'
AND tascamref=1;
UPDATE cxc_factura f SET codmonref='USD',
tascamref = COALESCE(tascam,1)
WHERE codmon='USD'
AND tascamref=1;
UPDATE cxc_factura f SET codmonref='USD',
tascamref = COALESCE(tascam,1)
WHERE codmon='CUC'
AND tascamref=1;
UPDATE cxc_ingresos i SET codmonref='USD',
tascamref = COALESCE((
SELECT COALESCE(cambio,1)
FROM covensol_tasas_cambio t
WHERE t.fcontable <= i.fecing
ORDER BY fcontable DESC LIMIT 1
),1)
WHERE i.fecing>='2021-01-01'
AND codmon!='USD'
AND codmon!='CUC'
AND tascamref=1;
UPDATE cxc_ingresos f SET codmonref='USD',
tascamref = COALESCE(tascam,1)
WHERE codmon='USD'
AND tascamref=1;
UPDATE cxc_ingresos f SET codmonref='USD',
tascamref = COALESCE(tascam,1)
WHERE codmon='CUC'
AND tascamref=1;
UPDATE cxc_dt_movcobro i SET codmonref='USD',
tascamref = COALESCE((
SELECT COALESCE(cambio,1)
FROM covensol_tasas_cambio t
WHERE t.fcontable <= i.fecmovcob
ORDER BY fcontable DESC LIMIT 1
),1)
WHERE i.fecmovcob>='2021-01-01'
AND codmon!='USD'
AND codmon!='CUC'
AND tascamref=1;
UPDATE cxc_dt_movcobro f SET codmonref='USD',
tascamref = COALESCE(tascam,1)
WHERE codmon='USD'
AND tascamref=1;
UPDATE cxc_dt_movcobro f SET codmonref='USD',
tascamref = COALESCE(tascam,1)
WHERE codmon='CUC'
AND tascamref=1;
UPDATE cxc_documento i SET codmonref='USD',
tascamref = COALESCE((
SELECT COALESCE(cambio,1)
FROM covensol_tasas_cambio t
WHERE t.fcontable <= i.fecdoc
ORDER BY fcontable DESC LIMIT 1
),1)
WHERE i.fecdoc>='2021-01-01'
AND codmon_doc!='USD'
AND codmon_doc!='USD'
AND codmon_doc!='CUC'
AND tascamref=1;
UPDATE cxc_documento f SET codmonref='USD',
tascamref = COALESCE(tascam_doc,1)
WHERE codmon_doc='USD'
AND tascamref=1;
UPDATE cxc_documento f SET codmonref='USD',
tascamref = COALESCE(tascam_doc,1)
WHERE codmon_doc='CUC'
AND tascamref=1;
UPDATE cxc_dt_anticipos i SET codmonref='USD',
tascamref = COALESCE((
SELECT COALESCE(cambio,1)
FROM covensol_tasas_cambio t
WHERE t.fcontable <= i.fecdesc
ORDER BY fcontable DESC LIMIT 1
),1)
WHERE i.fecdesc>='2021-01-01'
AND codmon!='USD'
AND codmon!='CUC'
AND tascamref=1;
UPDATE cxc_dt_anticipos f SET codmonref='USD',
tascamref = COALESCE(tascam,1)
WHERE codmon='USD'
AND tascamref=1;
UPDATE cxc_dt_anticipos f SET codmonref='USD',
tascamref = COALESCE(tascam,1)
WHERE codmon='CUC'
AND tascamref=1;
UPDATE cxc_anticipos i SET codmonref='USD',
tascamref = COALESCE((
SELECT COALESCE(cambio,1)
FROM covensol_tasas_cambio t
WHERE t.fcontable <= i.fecant
ORDER BY fcontable DESC LIMIT 1
),1)
WHERE i.fecant>='2021-01-01'
AND codmon!='USD'
AND codmon!='CUC'
AND tascamref=1;
UPDATE cxc_anticipos f SET codmonref='USD',
tascamref = COALESCE(tascam,1)
WHERE codmon='USD'
AND tascamref=1;
UPDATE cxc_anticipos f SET codmonref='USD',
tascamref = COALESCE(tascam,1)
WHERE codmon='CUC'
AND tascamref=1;
UPDATE cxc_dt_movdoc i SET codmonref='USD',
tascamref = COALESCE((
SELECT COALESCE(cambio,1)
FROM covensol_tasas_cambio t
WHERE t.fcontable <= i.fecmovdoc
ORDER BY fcontable DESC LIMIT 1
),1)
WHERE i.fecmovdoc>='2021-01-01'
AND codmon!='USD'
AND codmon!='CUC'
AND tascamref=1;
UPDATE cxc_dt_movdoc f SET codmonref='USD',
tascamref = COALESCE(tascam,1)
WHERE codmon='USD'
AND tascamref=1;
UPDATE cxc_dt_movdoc f SET codmonref='USD',
tascamref = COALESCE(tascam,1)
WHERE codmon='CUC'
AND tascamref=1;
UPDATE cxc_foncom_mov_fondos_comerciales i SET codmonref='USD',
tascamref = COALESCE((
SELECT COALESCE(cambio,1)
FROM covensol_tasas_cambio t
WHERE t.fcontable <= i.fecmovcom
ORDER BY fcontable DESC LIMIT 1
),1)
WHERE i.fecmovcom>='2021-01-01'
AND tascamref=1;
UPDATE soc_ordencompra c SET codmonref='USD',
tascamref = COALESCE((
SELECT COALESCE(cambio,1)
FROM covensol_tasas_cambio t
WHERE t.fcontable <= c.fecordcom
ORDER BY fcontable DESC LIMIT 1
),1)
WHERE c.fecordcom>='2021-01-01'
AND codmon!='USD'
AND tascamref=1;
UPDATE soc_ordencompra c SET codmonref='USD',
tascamref = COALESCE(tascamordcom,1)
WHERE codmon='USD'
AND tascamref=1;
UPDATE sep_solicitud c SET codmonref='USD',
tascamref = COALESCE((
SELECT COALESCE(cambio,1)
FROM covensol_tasas_cambio t
WHERE t.fcontable <= c.fecregsol
ORDER BY fcontable DESC LIMIT 1
),1)
WHERE c.fecregsol>='2021-01-01'
AND codmon!='USD'
AND tascamref=1;
UPDATE sep_solicitud c SET codmonref='USD',
tascamref = COALESCE(tascam,1)
WHERE codmon='USD'
AND tascamref=1;
UPDATE sno_hperiodo c SET codmonref='USD',
tascamref = COALESCE((
SELECT COALESCE(cambio,1)
FROM covensol_tasas_cambio t
WHERE t.fcontable <= c.feccontper
ORDER BY fcontable DESC LIMIT 1
),1)
WHERE c.feccontper>='2021-01-01'
AND tascamref=1;
UPDATE sno_periodo c SET codmonref='USD',
tascamref = COALESCE((
SELECT COALESCE(cambio,1)
FROM covensol_tasas_cambio t
WHERE t.fcontable <= c.feccontper
ORDER BY fcontable DESC LIMIT 1
),1)
WHERE c.feccontper>='2021-01-01'
AND tascamref=1;