Ir al contenido

SAP — Read status bar

Tipo: sap-read-status-bar  ·  Paquete: SAP Activities v1.0.5  ·  Salida: Dictionary<string,object>

Lee la barra de estado de SAP, la línea inferior de la ventana donde SAP cuenta qué pasó con la última acción: “Documento 4500000123 guardado”, “No table entries found for specified key”, un error de validación. Es la forma de que tu flujo reaccione a lo que SAP respondió, por ejemplo para registrar el número de un documento creado o para saltarse un caso sin datos.

Lee el mensaje que haya en ese momento en la barra de estado de la ventana principal (wnd[0]/sbar) y devuelve su tipo y su texto. No espera ni hace ninguna acción: léela justo después de la actividad cuyo resultado quieres conocer. Si no hay mensaje, el tipo y el texto vienen vacíos.

Los tipos de mensaje de SAP son:

TipoSignificado
SÉxito (o informativo; ojo, algunos resultados vacíos llegan con este tipo)
WAdvertencia
EError
ACancelación
IInformación

Ninguno.

ParámetroTipoPor defectoDescripción
sessionZoanSapSession—Sesión de SAP. Omítela dentro del body de un SAP — Attach o SAP — Log on.

Devuelve un diccionario con tres claves:

ClaveTipoContenido
typestringTipo de mensaje: S, W, E, A, I, o vacío.
textstringTexto del mensaje.
isErrorbooleantrue si el tipo es E o A.

Si no hay mensaje (o la ventana principal no tiene barra de estado), type y text vienen como "" e isError como false. Al log solo va el tipo y el código del mensaje, nunca su texto, porque la barra suele repetir datos de negocio.

Leer la barra no falla aunque esté vacía. Solo puede fallar por los errores comunes a todas las actividades, como la falta de sesión.

Saltarse la exportación cuando la consulta no devuelve datos:

SAP Press Toolbar Button selector = "wnd[0]/tbar[1]/btn[8]"
SAP Read Status Bar → output: estado
If condition = str(estado["text"]).Contains("No table entries")
├─ then:
│ Log level = warning message = "La consulta no devolvió registros"
└─ else:
SAP Export List path = "C:\salidas\" fileName = "t000.txt"