gke_arce_rupe2
.rupe
Tables
(current)
Columns
Constraints
Relationships
Orphan Tables
Anomalies
Routines
migrar_cuentas_discount()
Parameters
Name
Type
Mode
Definition
declare salir boolean := FALSE; rev integer; id_sucursal_scotia integer; nombre_sucursal varchar(255); id_banco_scotia integer; nombre_banco_scotia varchar(255); codordengrupo integer; codordengrupo_aux integer; codordenciclo integer; tipo varchar(1); codplan integer; cnt_id_aux integer; /* serial ??*/ cnt_alcance_string_aux varchar(4000); cnt_ciudad_banco_aux varchar(255); cnt_ciudad_banco_intermediario_aux varchar(255); cnt_codigo_swift_aux varchar(255); cnt_codigo_swift_banco_intermedio_aux varchar(255); cnt_crea_fecha_aux timestamp; cnt_crea_origen_aux integer; cnt_crea_usu_aux varchar(255); cnt_descripcion_aux varchar(255); cnt_direccion_banco_destino_aux varchar(255); cnt_estado_datos_descripcion_aux varchar(255); cnt_fecha_valida_aux date; cnt_nombre_banco_aux varchar(255); cnt_nombre_banco_intermedio_aux varchar(255); cnt_nro_cuenta_aux varchar(255); cnt_numero_aba_aux varchar(255); cnt_sucursal_aux varchar(255); cnt_titular_cuenta_aux varchar(255); cnt_ultmod_fecha_aux timestamp; cnt_ultmod_origen_aux integer; cnt_ultmod_usu_aux varchar(255); cnt_usuario_valida_aux varchar(255); cnt_version_aux integer; cnt_ban_id_aux integer; cnt_ban_int_id_aux integer; cnt_estado_cuenta_bancaria_ecu_id_aux integer; cnt_estado_datos_aux integer; cnt_pais_banco_pai_id_aux integer; cnt_pais_banco_intermediaria_aux integer; cnt_proveedor_prv_id_aux integer; cnt_sucursal_id_aux integer; cnt_tipo_cuenta_bancaria_tcb_id_aux integer; cnt_tipo_moneda_mon_id_aux integer; cnt_iban_aux varchar(255); cnt_eliminado_aux boolean; /* cursor que retorna las cuentas bancarias del banco DISCOUNTBANK (no eliminadas y en estado: Pendiente Validar o Validada)*/ C_cuenta_bancaria CURSOR FOR SELECT cb.cnt_id FROM rupe.rupe_cuentas_bancarias cb WHERE cb.cnt_ban_id = 103 AND cb.cnt_eliminado=false AND cb.cnt_estado_datos IN (1,2);/* 103 id del banco DISCOUNTBANK en la base rupe*/ reg_cuenta_bancaria RECORD; BEGIN /* invoco a la funcion new_revid que inserta un nuevo registro en la tabla audit.revinfo y retorna el indentificador del nuevo registro*/ rev:= rupe.new_revid(); id_banco_scotia = 116; /*cargo el nombre del banco scotia*/ SELECT b.ban_nombre INTO nombre_banco_scotia FROM rupe.rupe_bancos b WHERE b.ban_id=id_banco_scotia; /* 116 id del banco scotia bank en la base rupe*/ OPEN C_cuenta_bancaria; /*Recorro todas las cuentas bancarias del DISCOUNTBANK y las actualizo con el banco SCOTIABANK*/ LOOP FETCH C_cuenta_bancaria INTO reg_cuenta_bancaria; EXIT WHEN NOT FOUND; /* Obtengo los datos actules de la cuenta bancaria de id = reg_cuenta_bancaria */ SELECT cb.cnt_id,cb.cnt_alcance_string,cb.cnt_ciudad_banco,cb.cnt_ciudad_banco_intermediario,cb.cnt_codigo_swift, cb.cnt_codigo_swift_banco_intermedio,cb.cnt_crea_fecha,cb.cnt_crea_origen,cb.cnt_crea_usu, cb.cnt_descripcion,cb.cnt_direccion_banco_destino,cb.cnt_estado_datos_descripcion,cb.cnt_fecha_valida, cb.cnt_nombre_banco,cb.cnt_nombre_banco_intermedio,cb.cnt_nro_cuenta,cb.cnt_numero_aba,cb.cnt_sucursal, cb.cnt_titular_cuenta,cb.cnt_ultmod_fecha,cb.cnt_ultmod_origen,cb.cnt_ultmod_usu,cb.cnt_usuario_valida, cb.cnt_version,cb.cnt_ban_id,cb.cnt_ban_int_id,cb.cnt_estado_cuenta_bancaria_ecu_id,cb.cnt_estado_datos, cb.cnt_pais_banco_pai_id,cb.cnt_pais_banco_intermediaria,cb.cnt_proveedor_prv_id,cb.cnt_sucursal_id, cb.cnt_tipo_cuenta_bancaria_tcb_id,cb.cnt_tipo_moneda_mon_id,cb.cnt_iban,cb.cnt_eliminado INTO cnt_id_aux,cnt_alcance_string_aux,cnt_ciudad_banco_aux,cnt_ciudad_banco_intermediario_aux,cnt_codigo_swift_aux, cnt_codigo_swift_banco_intermedio_aux,cnt_crea_fecha_aux,cnt_crea_origen_aux,cnt_crea_usu_aux, cnt_descripcion_aux,cnt_direccion_banco_destino_aux,cnt_estado_datos_descripcion_aux, cnt_fecha_valida_aux,cnt_nombre_banco_aux,cnt_nombre_banco_intermedio_aux,cnt_nro_cuenta_aux,cnt_numero_aba_aux, cnt_sucursal_aux,cnt_titular_cuenta_aux,cnt_ultmod_fecha_aux,cnt_ultmod_origen_aux,cnt_ultmod_usu_aux,cnt_usuario_valida_aux, cnt_version_aux,cnt_ban_id_aux,cnt_ban_int_id_aux,cnt_estado_cuenta_bancaria_ecu_id_aux,cnt_estado_datos_aux,cnt_pais_banco_pai_id_aux, cnt_pais_banco_intermediaria_aux,cnt_proveedor_prv_id_aux,cnt_sucursal_id_aux,cnt_tipo_cuenta_bancaria_tcb_id_aux, cnt_tipo_moneda_mon_id_aux,cnt_iban_aux,cnt_eliminado_aux FROM rupe.rupe_cuentas_bancarias cb WHERE cb.cnt_id = reg_cuenta_bancaria.cnt_id; /* Obtener nuevo id y nombre de sucursal en Scotia */ SELECT sba_id_dest, sba_nom_sucursal_dest INTO id_sucursal_scotia, nombre_sucursal FROM rupe.migracion_sucursales ms WHERE ms.sba_id = cnt_sucursal_id_aux; /* inserto una nueva tupla en la tabla de auditado (el campo revtype representa tipo de operacion 0 add, 1 mod, 2 del, en este caso es 1) */ INSERT INTO audit.rupe_cuentas_bancarias_aud VALUES (cnt_id_aux,rev,1,cnt_alcance_string_aux,cnt_ciudad_banco_aux,cnt_ciudad_banco_intermediario_aux,cnt_codigo_swift_aux, cnt_codigo_swift_banco_intermedio_aux,cnt_crea_fecha_aux,cnt_crea_origen_aux,cnt_crea_usu_aux, cnt_descripcion_aux,cnt_direccion_banco_destino_aux,cnt_estado_datos_descripcion_aux, cnt_fecha_valida_aux,nombre_banco_scotia,cnt_nombre_banco_intermedio_aux,cnt_nro_cuenta_aux,cnt_numero_aba_aux, nombre_sucursal,cnt_titular_cuenta_aux,current_timestamp,cnt_ultmod_origen_aux,'ADMIN',cnt_usuario_valida_aux, cnt_version_aux+1,id_banco_scotia,cnt_ban_int_id_aux,cnt_estado_cuenta_bancaria_ecu_id_aux,cnt_estado_datos_aux,cnt_pais_banco_pai_id_aux, cnt_pais_banco_intermediaria_aux,cnt_proveedor_prv_id_aux,id_sucursal_scotia,cnt_tipo_cuenta_bancaria_tcb_id_aux, cnt_tipo_moneda_mon_id_aux,cnt_iban_aux,cnt_eliminado_aux); /*Actualizo los campos nombre del banco, codigo del banco, codigo de la sucursal, nombre de la sucursal, numero de version en el registro correspondiente*/ UPDATE rupe.rupe_cuentas_bancarias SET cnt_nombre_banco = nombre_banco_scotia , cnt_ban_id = id_banco_scotia , cnt_sucursal_id = id_sucursal_scotia , cnt_sucursal = nombre_sucursal, cnt_version = (cnt_version_aux + 1), cnt_ultmod_fecha = current_timestamp, cnt_ultmod_usu = 'ADMIN' WHERE cnt_id = reg_cuenta_bancaria.cnt_id; END LOOP; CLOSE C_cuenta_bancaria; Raise debug 'finalizo el proceso de actualizar cuentas '; END;