docs & tools: Actualización de informes y scripts de migración DASUTEN

This commit is contained in:
Ricardo Monla
2026-04-20 16:25:51 -03:00
parent faf46be84b
commit 65dd92b769
44 changed files with 3822 additions and 568 deletions
+70
View File
@@ -0,0 +1,70 @@
#!/usr/bin/env ruby
# frozen_string_literal: true
require_relative 'drones/lib/dasu_executor'
puts "=== VERIFICACIÓN FINAL DASU-SQL4 ==="
puts "Fecha: #{Time.now.strftime('%Y-%m-%d %H:%M:%S')}"
puts ""
ps_script = <<~PSCMD.strip
$ErrorActionPreference = "Stop"
$connString = "Server=localhost;Database=sysdasuten;Integrated Security=true;TrustServerCertificate=yes;"
$conn = New-Object System.Data.SqlClient.SqlConnection($connString)
$conn.Open()
Write-Host "[1] Última fecha en BonosAfiliado (formato ISO):"
$cmd = New-Object System.Data.SqlClient.SqlCommand("SELECT CONVERT(varchar, MAX(fecha), 120) as ultima FROM BonosAfiliado", $conn)
$ultima = $cmd.ExecuteScalar()
Write-Host " $ultima"
Write-Host "`n[2] Registros por día (últimos 5 días):"
$cmd = New-Object System.Data.SqlClient.SqlCommand("
SELECT TOP 5
CONVERT(varchar, CAST(fecha AS DATE), 120) as dia,
COUNT(*) as cantidad,
MIN(idsolicitud) as min_id,
MAX(idsolicitud) as max_id
FROM BonosAfiliado
GROUP BY CAST(fecha AS DATE)
ORDER BY dia DESC
", $conn)
$adapter = New-Object System.Data.SqlClient.SqlDataAdapter($cmd)
$ds = New-Object System.Data.DataSet
$adapter.Fill($ds)
$ds.Tables[0].Rows | ForEach-Object {
Write-Host " $($_.dia): $($_.cantidad) registros | IDs: [$($_.min_id) - $($_.max_id)]"
}
Write-Host "`n[3] ¿La suma de registros coincide con el total?"
$cmd = New-Object System.Data.SqlClient.SqlCommand("SELECT COUNT(*) FROM BonosAfiliado", $conn)
$total = $cmd.ExecuteScalar()
Write-Host " Total: $total"
Write-Host "`n[4] Muestra de 5 registros recientes (con todos sus campos):"
$cmd = New-Object System.Data.SqlClient.SqlCommand("
SELECT TOP 5 idsolicitud, fecha, codigoafiliado, dependencia, bono
FROM BonosAfiliado
ORDER BY fecha DESC, idsolicitud DESC
", $conn)
$adapter = New-Object System.Data.SqlClient.SqlDataAdapter($cmd)
$ds = New-Object System.Data.DataSet
$adapter.Fill($ds)
$ds.Tables[0].Rows | ForEach-Object {
Write-Host " ids=$($_.idsolicitud) | fecha=$($_.fecha) | afiliado=$($_.codigoafiliado) | dep=$($_.dependencia) | bono=$($_.bono)"
}
Write-Host "`n[5] Verificando si hay datos del 15 de abril de 2026:"
$cmd = New-Object System.Data.SqlClient.SqlCommand("
SELECT COUNT(*) as c FROM BonosAfiliado
WHERE YEAR(fecha) = 2026 AND MONTH(fecha) = 4 AND DAY(fecha) = 15
", $conn)
$c = $cmd.ExecuteScalar()
Write-Host " Registros el 2026-04-15: $c"
$conn.Close()
PSCMD
DasuExecutor.execute_ps_on_dasu(ps_script)
puts "\n✅ Verificación completada"