* TYPE: Serialize active version
When a new type-pools is created, SAP creates active version by default. SY-SUBRC is always set to 0 for the first function module call as there is always an active version hence, second function will never be called. Remove the second call.
* Multiple changes
Check existence of the object using TADIR entry
If the active object doesn't exist, show proper message
* Existence check using PROGDIR
* Replace SELECT..ENDSELECT
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Group unsupported messages per object type
When number of unsupported objects increase in a package, user needs to scroll through the long list of messages. This change groups messages per object type reducing the number of messages. Also, the filtering before serialization is good in terms of effective work process utilization( in parallel mode ).
* Replace LINE_EXISTS with READ TABLE
* Cache the supported object types
* Show object name
If there is only one object name for the unsupported object type, show the name.
* Spelling: "object(s)" to "objects"
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
In case DDIC objects exist as "new" version only , the system will now raise an error message to alert the user that "No active version was found".
Note: The log will disappear after some navigation and such objects will not be included in the repo view if they only exist locally (until they are activated).
* Fix#4515Fix#4515 by serializing new TAB_INCLUDES to contain include numbers of new methods of classes.
* Last fix before pull request
* files named "em_<methodname>" instead "emxxx"
* editorder without gaps
* Cleanup commented out line
* fixes abaplint
Co-authored-by: sandra rossi <sandra.rossi@gmail.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* DEVC: Unlock in case of errors
If a package object cannot be deleted or deserialized properly, it remains locked.
The change unlocks the object in these cases.
* Update set_lock
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* TABL: Remove field position from serialization
It's not necessary to serialize field position (`DD03P-POSTION`). Fields can simply be numberred sequentially during deserialize.
This avoid issues with include structures that have different number of fields in original and target systems.
Closes#4506
* Clear tabname, ddlanguage
* Lint
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
* Clear dd08v-ddlanguage
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Main page - Only show hover info for favorites
in package, user links
suppress titles for non-favorite repositories
* always suppress loading titles in repo overview
Co-authored-by: Lars Hvam <larshp@hotmail.com>
When executing the background logic if a repo processing fails, then log the error and continue processing with next repository.
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Deserialize: Commit changes before activation
Some objects (like `prog` or `intf`) are deserialized as inactive objects i.e. uncommitted changes. Usually, these changes are committed to the database after the activation process (end of the session). However, if there are any errors during activation, an exception is raised which will automatically do a `rollback work`.
This change will make sure that inactive objects are preserved even if the activation fails. One can then analyze the inactive objects, make necessary corrections, and activate them manually.
Closes#4500
* Replace with standard function
Co-authored-by: Lars Hvam <larshp@hotmail.com>
* Tweak HTTP error messages
- Minor changes to error texts
- Add HTTP 422 which can happen on gitlab if you ommit ".git" in the URL
* Lint
Co-authored-by: Lars Hvam <larshp@hotmail.com>