Table maintenance — SM30, the maintenance generator, and its events¶
Level: 201 · working knowledge
Status: stub — the mechanism is here; the worked example is not yet.
One line: The table maintenance generator (SE11 → Utilities → Table Maintenance Generator) builds an SM30 dialog for any table or view — screens, function group, authorization group — and its events are where a developer adds validation, defaulting or logging without writing a screen.
The mechanism¶
- Generate: choose a function group (yours), an authorization group (
S_TABU_DIS), one-step or two-step maintenance, and screen numbers. - Maintain:
SM30(orSM31, or a parameter transaction pointing at it) with the table name. - Extend: Environment → Modification → Events — numbered events (
01before save,05on creating a new entry,21fill hidden fields…) each bound to aFORMin the generated function group. - Transport: customizing tables (delivery class
C) prompt for a customizing request on save, if Standard recording routine was chosen.
A maintenance view (SE11, view type maintenance) over several tables gives one dialog for a header-and-items pair; a view cluster (SE54) chains dialogs with navigation.
Why it earns a page¶
Because every project has a dozen Z customizing tables and SM30 is the cheapest correct UI for them — with authorization, transport recording and change logging (if the technical setting is on) for free. And because the events are FORMs in generated code: obsolete in form, unavoidable here, and regenerated if you are not careful (they survive regeneration; the screens do not always).
What this page still needs¶
- [ ] a generated dialog on a demo table, with event
01validating a field - [ ] the authorization object
S_TABU_DIS/S_TABU_NAMand what each restricts - [ ] the "generated screens overwritten" trap, and how to keep screen changes
See also¶
- Table types and buffering — delivery class, logging
- Authorizations —
S_TABU_DIS - Transports — customizing requests
FORMandPERFORM— the event routines' shape