Tabella OHEM in SAP Business One (Dipendenti (anagrafica dipendenti))

OHEM è la tabella dell’anagrafica dipendenti di SAP Business One: una riga per dipendente con nome, mansione, reparto, filiale, responsabile, date di assunzione e cessazione e collegamenti a un utente (userId) e a un agente di vendita (salesPrson). I documenti memorizzano il titolare del documento in OwnerCode, che si collega a OHEM.empID.

Campi chiave di OHEM

CampoContenuto
empIDNumero del dipendente, la chiave. OINV.OwnerCode e OCRD.OwnerCode puntano a questo campo.
firstName / middleName / lastNameNome del dipendente.
jobTitleMansione.
positionPosizione (OHPS).
deptReparto (OUDP).
branchFiliale (OUBR).
managerResponsabile, un altro OHEM.empID.
userIdUtente del dipendente. Si collega a OUSR.USERID.
salesPrsonAgente di vendita. Si collega a OSLP.SlpCode.
startDate / termDateDate di assunzione e di cessazione.
ActiveY = attivo, N = inattivo.
CostCenterCentro di costo (OPRC).

Come OHEM si collega alle altre tabelle

OHEM è un’anagrafica. OHEM.manager punta a un’altra riga di OHEM, OHEM.userId a OUSR e OHEM.salesPrson a OSLP. Le testate dei documenti memorizzano il titolare del documento in OwnerCode e i business partner il titolare in OCRD.OwnerCode, ed entrambi puntano a OHEM.empID. OHEM contiene anche dati personali, quindi selezioni solo le colonne che servono al report.

Join più comuni

  • OHEM T0 LEFT JOIN OHEM T1 ON T1.empID = T0.manager (responsabile del dipendente)
  • OHEM T0 LEFT JOIN OUSR T2 ON T2.USERID = T0.userId (utente del dipendente)
  • OHEM T0 LEFT JOIN OSLP T3 ON T3.SlpCode = T0.salesPrson (agente di vendita)
  • OINV T4 INNER JOIN OHEM T0 ON T0.empID = T4.OwnerCode (titolare della fattura)

Quando si usa la tabella OHEM

Usi OHEM per un organigramma (dipendente e responsabile), mostrare il titolare del documento nei report, verificare quali dipendenti hanno un utente o un agente di vendita collegato ed elencare i dipendenti attivi per reparto.

Query di esempio: dipendenti attivi con responsabile, utente e agente di vendita

SQL Server

SELECT T0.empID, T0.firstName, T0.lastName, T0.jobTitle,
  T1.firstName + ' ' + T1.lastName AS Manager, T2.USER_CODE, T3.SlpName
FROM OHEM T0
LEFT JOIN OHEM T1 ON T1.empID = T0.manager
LEFT JOIN OUSR T2 ON T2.USERID = T0.userId
LEFT JOIN OSLP T3 ON T3.SlpCode = T0.salesPrson
WHERE T0.Active = 'Y'
ORDER BY T0.lastName, T0.firstName

SAP HANA (nomi delle colonne tra virgolette doppie)

SELECT T0."empID", T0."firstName", T0."lastName", T0."jobTitle",
  T1."firstName" || ' ' || T1."lastName" AS "Manager", T2."USER_CODE", T3."SlpName"
FROM OHEM T0
LEFT JOIN OHEM T1 ON T1."empID" = T0."manager"
LEFT JOIN OUSR T2 ON T2."USERID" = T0."userId"
LEFT JOIN OSLP T3 ON T3."SlpCode" = T0."salesPrson"
WHERE T0."Active" = 'Y'
ORDER BY T0."lastName", T0."firstName"

Incolli una delle due versioni in Strumenti → Query → Generatore di query. Le serve l’altro dialetto per una Sua query? Usi il convertitore da SQL a HANA.

Errore frequente: Confondere il titolare del documento con l’utente che lo ha creato

OwnerCode in un documento è un dipendente (OHEM.empID), mentre UserSign è l’utente che lo ha creato (OUSR.USERID). Sono numeri diversi in tabelle diverse. Colleghi OwnerCode a OHEM e UserSign a OUSR, e tenga le colonne di stipendio, documento d’identità e passaporto fuori dai report generali. Veda Tabella OUSR (utenti).

Query pronte che usano OHEM (pagine in inglese)

Domande sulla tabella OHEM

Come collego un dipendente a un utente di SAP Business One?

OHEM.userId si collega a OUSR.USERID.

Dove viene memorizzato il titolare del documento?

In OwnerCode della testata del documento, che si collega a OHEM.empID.

Come trovo il responsabile di un dipendente?

OHEM.manager contiene l’empID del responsabile; colleghi OHEM a sé stessa.

Tabelle correlate

OUSR (Utenti) · OSLP (Agenti di vendita) · OINV (Fattura cliente (testata)) · cerca tutte le tabelle di SAP Business One

Fonti: Documentazione e SDK di SAP Business One (riferimento delle tabelle del database della DI API), SAP Help Portal.

Iniziamo?

Ci descriva di cosa ha bisogno. Riceverà una risposta tecnica chiara, un perimetro definito e un prezzo, di norma entro 24 ore.