Tabella ODRF in SAP Business One (Documenti bozza (testata))
ODRF è la tabella di SAP Business One che contiene la testata di ogni documento bozza: fatture, consegne, entrate merci e altri documenti salvati come bozza o in attesa di approvazione. ODRF.ObjType indica in quale documento si trasformerà la bozza (per esempio 13 = fattura cliente). Le righe sono in DRF1, collegate tramite DocEntry.
Campi chiave di ODRF
| Campo | Contenuto |
|---|---|
DocEntry | Chiave interna della bozza. Si collega a DRF1.DocEntry. |
ObjType | Tipo del documento a cui corrisponde la bozza, per esempio 13 = fattura cliente, 15 = consegna, 14 = nota di credito cliente. |
DocNum | Numero del documento. |
DocDate | Data di registrazione. |
CardCode / CardName | Business partner. Si collega a OCRD.CardCode. |
DocStatus | O = aperta, C = chiusa. |
WddStatus | Stato di approvazione: - = senza approvazione, W = in attesa, Y = approvata, N = respinta, P = generata, A = generata dall’approvatore, C = annullata. |
DocTotal / DocCur | Totale e valuta del documento. |
UserSign | Utente che ha creato la bozza. Si collega a OUSR. |
CreateDate | Data di creazione. |
Come ODRF si collega alle altre tabelle
ODRF è un’unica tabella di testata condivisa dalle bozze di molti tipi di documento; ObjType le distingue. DRF1 contiene le righe. Un documento effettivo registrato da una bozza salva il legame nella propria colonna draftKey (per esempio OPDN.draftKey = ODRF.DocEntry).
Join più comuni
ODRF T0 INNER JOIN DRF1 T1 ON T1.DocEntry = T0.DocEntry (righe)ODRF T0 LEFT JOIN OCRD T2 ON T2.CardCode = T0.CardCode (business partner)OPDN T3 INNER JOIN ODRF T0 ON T0.DocEntry = T3.draftKey (entrata merci registrata dalla bozza)
Quando si usa la tabella ODRF
Usi ODRF per elencare le bozze aperte per tipo di documento e utente, trovare i documenti in attesa di approvazione (WddStatus W) e ripulire le bozze vecchie mai registrate.
Query di esempio: bozze aperte per tipo di documento con stato di approvazione
SQL Server
SELECT T0.DocEntry, T0.ObjType, T0.DocDate, T0.CardCode, T0.CardName, T0.DocTotal, T0.WddStatus, T0.UserSign, DATEDIFF(day, T0.CreateDate, GETDATE()) AS DaysOld FROM ODRF T0 WHERE T0.DocStatus = 'O' ORDER BY T0.ObjType, T0.CreateDate
SAP HANA (nomi delle colonne tra virgolette doppie)
SELECT T0."DocEntry", T0."ObjType", T0."DocDate", T0."CardCode", T0."CardName", T0."DocTotal", T0."WddStatus", T0."UserSign", DAYS_BETWEEN(T0."CreateDate", CURRENT_TIMESTAMP) AS "DaysOld" FROM ODRF T0 WHERE T0."DocStatus" = 'O' ORDER BY T0."ObjType", T0."CreateDate"
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: Riportare le bozze come documenti registrati
Le bozze di tutti i tipi sono in ODRF, quindi un report deve filtrare ObjType per il documento di interesse, e le bozze non vanno mai sommate ai totali di vendite o acquisti. Usi il DocEntry della bozza (non DocNum) per collegarla al documento registrato tramite draftKey. Veda Query delle approvazioni in sospeso.
Query pronte che usano ODRF (pagine in inglese)
- Documenti in attesa di approvazione: Richieste di approvazione ancora in sospeso, con tipo di documento, autore e anzianità in giorni.
- Fatture create oggi per utente: Numero di fatture cliente create oggi da ciascun utente SAP B1, con l’importo totale.
Domande sulla tabella ODRF
Dove sono salvati i documenti bozza in SAP Business One?
In ODRF (testata) e DRF1 (righe), per tutti i tipi di documento. ODRF.ObjType indica di che tipo è la bozza.
Come trovo le bozze in attesa di approvazione?
Filtri ODRF.WddStatus = 'W' (in attesa).
Come trovo il documento registrato da una bozza?
Il documento registrato ha draftKey = ODRF.DocEntry.
Tabelle correlate
DRF1 (Documenti bozza (righe)) · OINV (Fattura cliente (testata)) · ORDR (Ordine cliente (testata)) · cerca tutte le tabelle di SAP Business One
Iniziamo?
Ci descriva di cosa ha bisogno. Riceverà una risposta tecnica chiara, un perimetro definito e un prezzo, di norma entro 24 ore.
