OUTB table in SAP Business One (User-Defined Tables)

OUTB is the SAP Business One table that lists user-defined tables (UDTs): one row per table with its name, description, object type, the user-defined object that uses it and archiving flags. The table itself exists in the database with an @ in front of TableName; its fields are described in CUFD.

OUTB key fields

FieldWhat it holds
TableNameTable name without the @ prefix.
DescrTable description.
TblNumTable number.
ObjectType0 = no object, 1 = master data, 2 = master data rows, 3 = document, 4 = document rows, 5 = no object with auto increment.
UsedInObjUser-defined object that uses the table.
LogTableLog table.
ArchivableY = archivable.
DisplyMenuY = display menu.
ApplyPermY = apply authorization.

How OUTB relates to other tables

OUTB registers each UDT. The fields of a UDT are rows in CUFD with TableID set to the table name with the @ prefix, and their valid values are in UFD1. CUFD.RTable points to OUTB.TableName when a UDF is linked to a UDT.

Common joins

  • OUTB T0 LEFT JOIN CUFD T1 ON T1.TableID = '@' + T0.TableName (fields of the UDT)
  • CUFD T2 INNER JOIN OUTB T0 ON T0.TableName = T2.RTable (UDFs linked to a UDT)

When you use the OUTB table

Use OUTB to list the UDTs of an add-on or a customization, to see which ones belong to a user-defined object, and to document them before an upgrade or a move to HANA.

Example query: user-defined tables with their object type and number of fields

SQL Server

SELECT T0.TableName, '@' + T0.TableName AS DbTable, T0.Descr, T0.ObjectType, T0.UsedInObj,
  COUNT(T1.FieldID) AS UserFields
FROM OUTB T0
LEFT JOIN CUFD T1 ON T1.TableID = '@' + T0.TableName
GROUP BY T0.TableName, T0.Descr, T0.ObjectType, T0.UsedInObj
ORDER BY T0.TableName

SAP HANA (column names in double quotes)

SELECT T0."TableName", '@' || T0."TableName" AS "DbTable", T0."Descr", T0."ObjectType", T0."UsedInObj",
  COUNT(T1."FieldID") AS "UserFields"
FROM OUTB T0
LEFT JOIN CUFD T1 ON T1."TableID" = '@' || T0."TableName"
GROUP BY T0."TableName", T0."Descr", T0."ObjectType", T0."UsedInObj"
ORDER BY T0."TableName"

Paste either version in Tools → Queries → Query Generator. Need the other dialect for your own query? Use the SQL to HANA converter.

Common pitfall: Forgetting the @ prefix

OUTB.TableName is stored without the @, but the database table and CUFD.TableID use it (for example @MYTABLE). Queries on the UDT must use the prefixed name, and on HANA the name must be in double quotes because of the @ character. See CUFD table (UDF definitions).

Questions about the OUTB table

Where is the list of user-defined tables?

In OUTB, one row per UDT. The fields are in CUFD.

What does ObjectType mean in OUTB?

0 no object, 1 master data, 2 master data rows, 3 document, 4 document rows, 5 no object with auto increment.

What is the database name of a UDT?

The TableName from OUTB with @ in front.

Related tables

CUFD (User-Defined Fields (descriptions)) · UFD1 (User-Defined Fields (valid values)) · search all SAP Business One tables

Sources: SAP Business One documentation and SDK (DI API database tables reference), SAP Help Portal.

Ready to get started?

Tell us what you need. You get a clear technical answer, a fixed scope and a price, usually within 24 hours.