23 apr

UDO (SAP Business One)

Versino Financial Suite

UDO stands for User Defined Object, in German Custom object. A UDO lifts a UDT (User-defined table) to the level of a fully-fledged business object: with its own interface, standard functions such as search/create/change, registration in menu structures, authorisation system, events and integration with DI API as well as Service Layer.

Context

When defining a UDO, the developer chooses between the two object types udo_MasterData (Master Data, like a master data record – Type 1) and udo_Document (documents, as a document with header and lines — Type 3). The UDO includes a master table (Master-Data: single UDT; Document: UDT + line UDT) and optionally a linked number series. In the UI API, there are dedicated default forms and the UDOEvent- An object that is triggered, for example, when opening a new UDO form with a header-line layout. In practice, the UDO concept is used by many add-ons — Versino Financial Suite, Coresuite extensions, or MariProject encapsulate industry-specific documents (e.g. DATEV export configurations, travel expense reports, project documents) via this, which act like native SAP B1 documents but carry their own logic.

Demarcation

An UDO is not identical to a UDT: The UDT is the storage layer, the UDO adds behaviour., UI, events, and API visibility. It's also not the same as simply extending a standard object via UDFs – UDFs attach to existing objects, UDOs are standalone objects. Compared to a classic add on- Forms with self-contained tables offer the UDO the advantage of automatically utilising standard SAP B1 mechanisms (authorisations, approval process, document flow, Service Layer endpoint); the disadvantage is a stronger dependency on the B1 framework and its limitations, such as in the UI freedom of the forms.


AI in everyday work: Person starts with their own task instead of the learning pile

AI in everyday work: Here's how to find the right start

Anyone who wants to use AI in their daily work is familiar with this: You read an article about prompts. A new model appears in it ...
AI-SHOP

AI assistant meets SAP Business One: Two paths out of the Versino AI shop

AI assistants like Claude or Copilot write emails, compile documents, and explain technical terms. But when you ask them about the open-source code...
SPRINT & SWIRL

Sprint and Swirl: How an AI agent divides work and learns from trials

This series deals with artificial intelligence in conjunction with SAP Business One. It takes a close look at fundamental AI principles...
LATS

LATS: Considering several paths simultaneously with AI — and the availability check in SAP B1

This series focuses on artificial intelligence in conjunction with SAP Business One. Not as a collection of product announcements, but as...
ReAct and RLEF

ReAct and RLEF: How Artificial Intelligence Learns from Real Mistakes — and What Automated Bank Reconciliation in SAP Business One Has to Do with It

This is the fourth instalment in a series on this blog dealing with AI fundamentals in conjunction with SAP Business One...
Service Layer AI as a transactional layer

SAP B1 10.0 FP2608: Service Layer AI as a transactional layer

The SAP Business One Service Layer has previously served predominantly as a passive data provider: applications requested data via OData, each ...
Wird geladen …