Tabla OUSR en SAP Business One (Usuarios)

OUSR es la tabla de usuarios de SAP Business One: una fila por usuario con el número interno (USERID), el código de inicio de sesión (USER_CODE), el nombre completo, el indicador de superusuario, el indicador de bloqueo, el departamento y la sucursal. Los documentos guardan el usuario que los creó en UserSign y el último que los actualizó en UserSign2, y ambos se unen con OUSR.USERID.

Campos clave de OUSR

CampoQué contiene
USERIDNúmero interno del usuario. UserSign y UserSign2 de los documentos apuntan a él.
USER_CODECódigo de usuario para iniciar sesión.
U_NAMENombre del usuario.
SUPERUSERY = superusuario, N = usuario normal.
LockedY = usuario bloqueado, N = no bloqueado.
GROUPSGrupo de usuarios: 0 = normal, 99 = eliminado.
DISCOUNTDescuento máximo que puede otorgar el usuario.
DepartmentDepartamento (OUDP).
BranchSucursal (OUBR).
DfltsGroupGrupo de valores predeterminados del usuario (OUDG).
E_MailDirección de correo electrónico del usuario.

Cómo se relaciona OUSR con otras tablas

Casi todas las tablas hacen referencia a OUSR: UserSign (creado por) y UserSign2 (actualizado por) en cabeceras de documentos, datos maestros y tablas de historial se unen con OUSR.USERID. OHEM.userId vincula un registro de empleado con un usuario. Las columnas de contraseña de OUSR guardan credenciales, así que déjelas fuera de cualquier reporte y exportación.

Joins habituales

  • OINV T0 INNER JOIN OUSR T1 ON T1.USERID = T0.UserSign (usuario que creó la factura)
  • OINV T0 LEFT JOIN OUSR T2 ON T2.USERID = T0.UserSign2 (usuario que la actualizó por última vez)
  • ADOC T3 INNER JOIN OUSR T1 ON T1.USERID = T3.UserSign2 (usuario por versión del historial)
  • OHEM T4 LEFT JOIN OUSR T1 ON T1.USERID = T4.userId (usuario de un empleado)

Cuándo se usa la tabla OUSR

Use OUSR para mostrar quién creó o modificó documentos, listar las cuentas activas, bloqueadas y de superusuario en una revisión de accesos y contar los documentos por usuario.

Consulta de ejemplo: facturas creadas por usuario en este mes

SQL Server

SELECT T1.USER_CODE, T1.U_NAME, COUNT(*) AS Invoices, SUM(T0.DocTotal) AS Total
FROM OINV T0
INNER JOIN OUSR T1 ON T1.USERID = T0.UserSign
WHERE T0.DocDate >= DATEADD(day, 1 - DAY(GETDATE()), CAST(GETDATE() AS date))
GROUP BY T1.USER_CODE, T1.U_NAME
ORDER BY Invoices DESC

SAP HANA (nombres de columna entre comillas dobles)

SELECT T1."USER_CODE", T1."U_NAME", COUNT(*) AS "Invoices", SUM(T0."DocTotal") AS "Total"
FROM OINV T0
INNER JOIN OUSR T1 ON T1."USERID" = T0."UserSign"
WHERE T0."DocDate" >= ADD_DAYS(CAST(CURRENT_TIMESTAMP AS date), 1 - DAYOFMONTH(CURRENT_TIMESTAMP))
GROUP BY T1."USER_CODE", T1."U_NAME"
ORDER BY "Invoices" DESC

Pegue cualquiera de las dos versiones en Herramientas → Consultas → Generador de consultas. ¿Necesita el otro dialecto para su propia consulta? Use el conversor de SQL a HANA.

Error frecuente: Unir UserSign con USER_CODE

UserSign y UserSign2 son números que coinciden con OUSR.USERID, no con el código de inicio de sesión de USER_CODE. Una unión por USER_CODE no devuelve nada o devuelve el usuario equivocado. Seleccione además columnas con nombre: SELECT * sobre OUSR trae las columnas de contraseña a su resultado. Vea Consulta de documentos creados por usuario.

Consultas listas que usan OUSR

Preguntas sobre la tabla OUSR

¿A qué columna de OUSR apunta UserSign?

A OUSR.USERID, el número interno del usuario. USER_CODE es el código de inicio de sesión.

¿Cómo encuentro los superusuarios en SAP Business One?

Seleccione los usuarios con OUSR.SUPERUSER = 'Y' y revise Locked para ver si la cuenta sigue en uso.

¿Qué significa GROUPS = 99 en OUSR?

El SDK indica 99 como eliminado y 0 como normal.

Tablas relacionadas

ADOC (Historial de documentos (historial de facturas)) · OHEM (Empleados (datos maestros de empleados)) · OINV (Factura de clientes (cabecera)) · buscar todas las tablas de SAP Business One

Fuentes: Documentación y SDK de SAP Business One (referencia de tablas de base de datos de DI API), SAP Help Portal.

¿Listo para empezar?

Cuéntenos lo que necesita. Recibirá una respuesta técnica clara, un alcance definido y un precio fijo, normalmente en 24 horas.