Code Monkey home page Code Monkey logo

zabap_table_edit's Introduction

ZABAP_TABLE_EDIT

Better SM30

FEATURES

Edit any table. Create change document automatically. Extend basic functionality if needed. obraz asd2 asd

INSTALATION

Via https://github.com/abapGit/abapGit. Requires https://github.com/Kaszub09/ZABAP_SALV_REPORT. Written in ABAP 7.50.

WHY

To streamline the process of making table available for edit and tracking changes.

With SM30:

  • Every time you change table, you need to regenerate maintenance module. No more!
  • Only way to add change document to SM30 is via editing maintenance module. That and any other edits are lost after recreating maintenace module, and you must implement them again (that is if you remembered copying them before regenerating module - otherwise you need to write them again from scratch). No more!
  • Table and column on generated screen are really narrow and usually needs to be manually widened. No more!

With ZSM30

  • Any changes to table are automatically reflected in transaction. Generating maintenance module is not needed.
  • No code is ever lost
  • Change document is implemented automatically - you can decide, whether to use it or not
  • Change document can be generated even for fields not marked as such
  • Transaction can be easily extended with custom logic per table (additional fields with description, make some fields non-editable, add additional validation, add new commands, edit entries before save etc. ) - instead of creating maintenance view or editing maintenance modules
  • It's possible to save default layout, so every time you open table for edit columns width/layout will be perfect! the same

USAGE

See examples package. Either call transaction ZABAP_TABLE_EDIT only with table name, or with name of class implementing interface ZIF_ZABAP_TABLE_EDIT.

CHANGELOG

v1.0.0 (9.06.2024)
  • Refactoring plus new extension
  • Support for text tables
  • Unit tests
v1.1.0 (30.07.2024)
  • Support for selection restriction
  • Utility interfaces (allows for easy combining of multiple interafces / check whether fields are filled / add additional feilds with descriptions )

Known issues

  • Some version of function module 'CHANGEDOCUMENT_MULTIPLE_CASE2' require change indicator field to be named 'KZ', causing shortdump otherwise - you can fix it by implementing SAP notes #2 (comment)

zabap_table_edit's People

Contributors

kaszub09 avatar wegnerdan avatar

Stargazers

Garu Lovilla avatar Enno avatar  avatar Krittin Engchuan avatar  avatar Gackt camiu avatar

Watchers

 avatar

zabap_table_edit's Issues

short dump in tcode ZABAP_TABLE_EDIT_EX1

When testing with example 1 (tcode ZABAP_TABLE_EDIT_EX1) entering invalid values in "created by" creates a short dump in function module CHANGEDOCUMENT_MULTIPLE_CASE2.

Steps to reproduce:
Enter value 555 in "created by", then save:
image

image

image

Some gui status texts are in polish (probably)

I will fork and try to fix this, but I also want to open this issue to record this.

Some texts in gui status DYNAMIC_COMMANDS are in what looks like polish to me.

<FUN_TEXT>Zapamiętanie</FUN_TEXT>

I am logged in in German.

image

The texts at the top of the screen are program texts of class zcl_zabap_table_edit_screen, the buttons at the bottom are from the gui status mentioned above.
The original language is set as english, so I think these texts should be english also. I can't find the original language of the gui status in the xml, though.

image

image

Pass extension class as variable instead of class name

This is just a suggestion.

In the constructor of zcl_zabap_table_edit an extension class can be passed to parameter class_name. Instead of this, I think it would be better to just pass an instance of zif_zabap_table_edit to the constructor.

This would enable the caller to use existing instances or handle instance creation etc themselves. Also would enable to pass instances of local classes.

Even if creating a bespoke class, the caller can just pass NEW zcl_some_extension( ) to the parameter.

If the class does not implement interface zif_zabap_table_edit, syntax check will prevent activation.

What do you think?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.