{"ref":"artifact:olegbash599-anytabupdatetask","page":"/artifacts/olegbash599-anytabupdatetask","json":"/artifacts/olegbash599-anytabupdatetask.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"olegbash599-anytabupdatetask","name":"AnyTabUpdateTask","artifact_type":"package","ecosystem":"abap","domain":"data-and-persistence","origin_ring":"independent","description":{"one_line":"An ABAP utility that saves any internal table to its database table inside CALL FUNCTION ... IN UPDATE TASK with one call, plus classes for grouping and walking internal tables.","short":"Utility for update task database changes and internal tables in ABAP","what_it_solves":"Making a database change inside an update task otherwise means a function module and a table type written for that one table, which is what the README's own counter-example shows. AnyTabUpdateTask replaces both with one call: `NEW zcl_c8a005_save2db( )->save2db( iv_tabname = ... it_tab_content = ... )->do_commit_if_any( )`, which takes the table name and the internal table and commits them, and the table name can be left out. Several tables can be queued on one instance and committed in one step, where an empty table is not taken into account. Beside it, `zcl_c8a005_group_tab` groups an internal table by a field and walks the groups. The main functionality sits in package `ZC8A_005`, with a demo report in the separate sub-package `ZC8A_005_DEMO`, and checkpoint group `ZC8A005_CONTROL` can be switched on in transaction SAAB for debugging and tracing."},"links":{"repo":"https://github.com/OlegBash599/AnyTabUpdateTask","docs":"https://olegbash.ru/anytabupdatetask"},"type_properties":{"placement":{"value":"in-host","sources":[{"url":"https://github.com/OlegBash599/AnyTabUpdateTask","title":"OlegBash599/AnyTabUpdateTask — README","checked":"2026-10-19","quote":"Main functionality is in package ZC8A_005."}]}},"identity":{"license":"MIT"},"source_available":true,"provides":[{"capability":"capability:abap-transactional-model","what_it_does":"Wraps a database change made inside an update task in one call, taking the table name and its internal table directly instead of a function module and table type written for that table, and commits the queued tables together.","sources":[{"url":"https://github.com/OlegBash599/AnyTabUpdateTask","title":"OlegBash599/AnyTabUpdateTask — README","checked":"2026-10-19","quote":"Utility for DataBase Changes in Update Task and OOP&Functional working with internal tables"},{"url":"https://github.com/OlegBash599/AnyTabUpdateTask","title":"OlegBash599/AnyTabUpdateTask — README","checked":"2026-10-19","quote":"Utility is for avoiding creation additional function modules and table types for stable and fast code-writing."}]}],"drafted_with_ai":true,"provenance":{"discovered_via":[{"source":"source:curator"}],"first_seen":"2026-09-14"},"maintainers":["actor:olegbash599"],"contributors":["actor:olegbash599"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"fair","evidence":"one contributor, personally owned"},{"label":"Repository","tier":"fair","evidence":"pushed 2026-02, not archived"}],"compatibility":[{"label":"Declared for","tier":"fair","evidence":"nothing declared"},{"label":"Survived majors","tier":"unknown","evidence":"not read on ABAP: its lines run side by side"},{"label":"Maintainer's CI","tier":"fair","evidence":"no CI configured"}],"practice":[{"label":"Tests","tier":"poor","evidence":"none found in the tree"},{"label":"Docs","tier":"good","evidence":"docs site, README 8 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":29,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-25","npm":"not published under this name","stars":29,"forks":5,"open_issues":1,"archived":false,"pushed_at":"2026-02-22","license_spdx":"MIT","org_owned":false,"default_branch":"main","created_at":"2022-06-29T14:19:06Z","open_prs":0,"tree_truncated":false,"test_files":0,"workflows":0,"other_ci":false,"readme_bytes":8537,"docs_files":0,"changelog":false,"license_file":true,"dts_files":0,"first_commit":"2022-06-29","last_commit":"2026-02-22","commits":109,"contributors":1,"readme_path":"README.md","readme_sha":"673e8b7f516adfca33760a778331af9fc070b200","repo_read":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:olegbash599","name":"OlegBash599","json":"/actors/olegbash599.json"}],"contributors":[{"ref":"actor:olegbash599","name":"OlegBash599","json":"/actors/olegbash599.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}