64 lines
2.6 KiB
Ruby
64 lines
2.6 KiB
Ruby
#!/usr/bin/env ruby
|
|
# frozen_string_literal: true
|
|
|
|
require_relative 'drones/lib/dasu_executor'
|
|
|
|
puts "=== VERIFICANDO DATOS EN 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] BonosAfiliado - Última fecha:"
|
|
$cmd = New-Object System.Data.SqlClient.SqlCommand("SELECT MAX(fecha) as ultima FROM BonosAfiliado", $conn)
|
|
$ultima = $cmd.ExecuteScalar()
|
|
Write-Host " $ultima"
|
|
|
|
Write-Host "`n[2] BonosAfiliado - ID máximo:"
|
|
$cmd = New-Object System.Data.SqlClient.SqlCommand("SELECT MAX(idsolicitud) as max_id FROM BonosAfiliado", $conn)
|
|
$maxId = $cmd.ExecuteScalar()
|
|
Write-Host " $maxId"
|
|
|
|
Write-Host "`n[3] BonosAfiliado - Registros por fecha:"
|
|
$cmd = New-Object System.Data.SqlClient.SqlCommand("SELECT CAST(fecha AS DATE) as dia, COUNT(*) as c 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): $($_.c) registros" }
|
|
|
|
Write-Host "`n[4] AutorizacionBonosExcepcion - ID máximo:"
|
|
$cmd = New-Object System.Data.SqlClient.SqlCommand("SELECT MAX(idsolicitud) as max_id FROM AutorizacionBonosExcepcion", $conn)
|
|
$maxId = $cmd.ExecuteScalar()
|
|
Write-Host " $maxId"
|
|
|
|
Write-Host "`n[5] AutorizacionBonosExcepcion - Última fecha:"
|
|
$cmd = New-Object System.Data.SqlClient.SqlCommand("SELECT MAX(fechasolicitud) as ultima FROM AutorizacionBonosExcepcion", $conn)
|
|
$ultima = $cmd.ExecuteScalar()
|
|
Write-Host " $ultima"
|
|
|
|
Write-Host "`n[6] Fecha del último restore:"
|
|
$cmd = New-Object System.Data.SqlClient.SqlCommand("SELECT TOP 1 restore_date FROM msdb.dbo.restorehistory WHERE destination_database_name = 'sysdasuten' ORDER BY restore_date DESC", $conn)
|
|
$adapter = New-Object System.Data.SqlClient.SqlDataAdapter($cmd)
|
|
$ds = New-Object System.Data.DataSet
|
|
$adapter.Fill($ds)
|
|
if ($ds.Tables[0].Rows.Count -gt 0) {
|
|
Write-Host " Restore: $($ds.Tables[0].Rows[0].restore_date)"
|
|
}
|
|
|
|
Write-Host "`n[7] Archivos en F:\\BACKUP:"
|
|
Get-ChildItem "F:\\BACKUP\\*.bak" | ForEach-Object {
|
|
Write-Host " $($_.Name)"
|
|
Write-Host " LastWriteTime: $($_.LastWriteTime)"
|
|
}
|
|
|
|
$conn.Close()
|
|
PSCMD
|
|
|
|
DasuExecutor.execute_ps_on_dasu(ps_script)
|
|
|
|
puts "\n✅ Verificación completada"
|