docs & tools: Actualización de informes y scripts de migración DASUTEN
This commit is contained in:
@@ -0,0 +1,84 @@
|
||||
#!/usr/bin/env ruby
|
||||
# frozen_string_literal: true
|
||||
|
||||
require 'tiny_tds'
|
||||
|
||||
puts "=== FENIX - Verificando fechas de últimos registros ==="
|
||||
puts "Fecha: #{Time.now.strftime('%Y-%m-%d %H:%M:%S')}"
|
||||
puts ""
|
||||
|
||||
pass_cmd = `ruby adn/tools/candados/candados.rb get utnlarioja.intranet:monlaricardo 2>/dev/null`.strip
|
||||
sql_user = 'UTNlarioja\\monlaricardo'
|
||||
sql_host = '10.0.10.200'
|
||||
|
||||
client = TinyTds::Client.new(
|
||||
username: sql_user,
|
||||
password: pass_cmd,
|
||||
host: sql_host,
|
||||
timeout: 600,
|
||||
database: 'sysdasuten'
|
||||
)
|
||||
|
||||
puts "[1] Últimos 10 registros de BonosAfiliado (por ID):"
|
||||
result = client.execute("
|
||||
SELECT TOP 10 idsolicitud, fecha, codigoafiliado, dependencia,
|
||||
CONVERT(datetime, fecha) as fecha_dt,
|
||||
GETDATE() as ahora
|
||||
FROM BonosAfiliado
|
||||
ORDER BY idsolicitud DESC
|
||||
")
|
||||
|
||||
result.each do |r|
|
||||
puts " ID: #{r['idsolicitud']} | fecha: #{r['fecha']} | afiliado: #{r['codigoafiliado']}"
|
||||
end
|
||||
|
||||
puts "\n[2] Registros con fecha 2026-04-15:"
|
||||
result = client.execute("
|
||||
SELECT TOP 10 idsolicitud, fecha, codigoafiliado
|
||||
FROM BonosAfiliado
|
||||
WHERE fecha >= '2026-04-15'
|
||||
ORDER BY idsolicitud DESC
|
||||
")
|
||||
|
||||
if result.to_a.empty?
|
||||
puts " No hay registros con fecha >= 2026-04-15"
|
||||
else
|
||||
result.each do |r|
|
||||
puts " ID: #{r['idsolicitud']} | fecha: #{r['fecha']}"
|
||||
end
|
||||
end
|
||||
|
||||
puts "\n[3] Verificando diferencia entre MAX(idsolicitud) y MAX(fecha):"
|
||||
result = client.execute("
|
||||
SELECT
|
||||
MAX(idsolicitud) as max_id,
|
||||
(SELECT MAX(fecha) FROM BonosAfiliado) as max_fecha,
|
||||
(SELECT fecha FROM BonosAfiliado WHERE idsolicitud = (SELECT MAX(idsolicitud) FROM BonosAfiliado)) as fecha_del_max_id
|
||||
FROM BonosAfiliado
|
||||
")
|
||||
|
||||
r = result.first
|
||||
puts " ID máximo: #{r['max_id']}"
|
||||
puts " Fecha máxima: #{r['max_fecha']}"
|
||||
puts " Fecha del ID máximo: #{r['fecha_del_max_id']}"
|
||||
|
||||
puts "\n[4] ¿Hay registros creados el 15/04 con fecha 14/04?"
|
||||
puts " (comparando IDs altos con fecha 14 vs fecha 15)"
|
||||
|
||||
# IDs del 15 de abril (por fecha de creación del registro, no la columna fecha)
|
||||
# Usamos una columna de auditoría si existe, sino comparamos por rango de IDs
|
||||
result = client.execute("
|
||||
SELECT
|
||||
(SELECT COUNT(*) FROM BonosAfiliado WHERE fecha = '2026-04-15') as con_fecha_15,
|
||||
(SELECT COUNT(*) FROM BonosAfiliado WHERE fecha = '2026-04-14') as con_fecha_14,
|
||||
(SELECT COUNT(*) FROM BonosAfiliado WHERE idsolicitud > 30000000) as con_id_alto
|
||||
")
|
||||
|
||||
r = result.first
|
||||
puts " Registros con fecha=2026-04-15: #{r['con_fecha_15']}"
|
||||
puts " Registros con fecha=2026-04-14: #{r['con_fecha_14']}"
|
||||
puts " Registros con ID > 30000000: #{r['con_id_alto']}"
|
||||
|
||||
client.close
|
||||
|
||||
puts "\n✅ Verificación completada"
|
||||
Reference in New Issue
Block a user