Comandos de S50Info¶
Ejecuta s50info COMANDO --help para consultar la ayuda incluida en tu versión.

Referencia rápida¶
| Objetivo | Comando |
|---|---|
| Verificar el entorno | s50info info |
| Validar y ejecutar SQL de lectura | s50info sql "select * from #clientes" |
| Recuperar datos en un archivo | s50info export "select * from #clientes" --formato xlsx --output clientes |
| Ejecutar un script | s50info run script/exportacion_articulos.py |
Ejecutar los .py de una carpeta |
s50info run script |
| Vaciar los logs operativos | s50info reset |
Comprobar el entorno con info¶
s50info info
s50info info --grupo-comunes 4
| Opción | Alias | Uso |
|---|---|---|
--grupo-comunes 4 |
-c 4 |
Sobrescribe el grupo configurado. Admite 4 o COMU0004. |
Consultar datos con sql¶
sql acepta una única consulta de lectura, la adapta al grupo y los ejercicios seleccionados, la ejecuta y muestra el SQL resuelto. No exporta las filas.
s50info sql "select * from #clientes"
s50info sql "select * from #clientes" --sqlyear @
s50info sql "select codigo, max(nombre) as nombre from #clientes" --sqlyear @ --groupby codigo
s50info sql "select * from [COMU]gruposemp" --grupo-comunes 4
s50info sql "select * from #clientes" --sage50
Reglas de lectura¶
- Admite
SELECTo una expresiónWITHcuyo resultado final sea unSELECT. - Rechaza sentencias de escritura y varias sentencias separadas por
;. #tablase resuelve como tabla de gestión para cada ejercicio.[COMU]tablayCOMUNES!tablausan el grupo de comunes activo.--groupbyno admite consultas conDISTINCT,TOP,ALLni subconsultas en la lista de columnas.
| Opción | Alias | Uso |
|---|---|---|
--sqlyear + |
-a + |
Usa el último ejercicio; es el valor predeterminado. |
--sqlyear @ |
-a @ |
Usa todos los ejercicios. |
--sqlyear 2025JX |
-a 2025JX |
Usa un ejercicio concreto mostrado por info. |
--grupo-comunes 4 |
-c 4 |
Cambia el grupo para la ejecución. |
--groupby codigo |
-b codigo |
Agrupa el resultado final al unir ejercicios. |
--sage50 |
-s |
Muestra también la consulta equivalente con sintaxis Sage 50. |
Exportar datos a un archivo¶
export aplica las mismas reglas de lectura que sql y crea los archivos dentro de resultados, relativa a la carpeta de trabajo.
s50info export "select * from #clientes" --formato csv --output clientes
s50info export "select * from #articulo" --formato xlsx --output articulos
s50info export "select * from #clientes" --formato json --output clientes --zip
| Opción | Alias | Uso |
|---|---|---|
--formato txt |
-f txt |
Texto; es el formato predeterminado. |
--formato csv |
-f csv |
Intercambio con hojas de cálculo y procesos. |
--formato json |
-f json |
Consumo por automatizaciones. |
--formato xml |
-f xml |
Intercambio XML. |
--formato xlsx |
-f xlsx |
Revisión en una hoja de cálculo. |
--output clientes |
-o clientes |
Define el nombre base, sin extensión. |
--plantilla ruta.txt |
-t ruta.txt |
Aplica una plantilla a una salida TXT. |
--zip |
-z |
Comprime el archivo generado. |
export también acepta --sqlyear, --grupo-comunes, --groupby y --sage50. Si no hay registros, no genera archivo.
Plantilla TXT¶
Cliente: {CODIGO} - {NOMBRE}
s50info export "select codigo, nombre from #clientes" --formato txt --plantilla cliente.txt --output clientes
Ejecutar automatizaciones con run¶
s50info run script/exportacion_articulos.py
s50info run script
s50info run
Sin ruta, intenta utilizar la carpeta script. Con una carpeta, ejecuta por orden de nombre todos sus .py; si uno falla, continúa y termina con código de error después de procesarlos.
run dispone de --skip-polars-cpu-check y el alias --polars-skip-cpu-check para scripts externos que requieran Polars en hardware antiguo. No lo actives si el script no lo necesita.
Vaciar logs con reset¶
s50info reset
Acción sin confirmación
reset vacía directamente EUROWINSYS.dbo.log_analisis y EUROWINSYS.dbo.log_error. Revisa y exporta los logs antes de ejecutarlo.
La ruta recomendada es ejecutar primero s50info run script/visualizar_log_analisis_excel_reseteo.py, revisar resultados/log_analisis.xlsx y confirmar el vaciado dentro del script.
Automatización en Windows¶
@echo off
s50info export "select * from #clientes" --formato csv --output clientes_diarios --zip
if errorlevel 1 exit /b 1
Antes de programar la tarea, ejecútala manualmente con el mismo usuario y desde la misma carpeta que usará el Programador de tareas.
Ejemplos prácticos¶
Exportar todos los ejercicios de una tabla¶
s50info export "select * from #clientes" --formato xlsx --output clientes --sqlyear @
Crea un archivo por cada ejercicio en la carpeta resultados.
Usar una plantilla personalizada¶
Crea un archivo plantilla.txt con marcadores {CAMPO}:
Cliente: {CODIGO} - {NOMBRE}
s50info export "select codigo, nombre from #clientes" --formato txt --plantilla plantilla.txt --output clientes
Consultar una tabla de comunes¶
s50info sql "select * from [COMU]gruposemp" --grupo-comunes 4
Ver el SQL equivalente en Sage 50¶
s50info sql "select * from #clientes" --sage50
Muestra la consulta con sintaxis nativa de Sage 50 bajo SQL SAGE50.
Siguiente paso¶
Para combinar varias operaciones, continúa con Automatización con scripts. Para mensajes y síntomas concretos, consulta Resolver problemas.
Enviar incidencia