-
Notifications
You must be signed in to change notification settings - Fork 43
Add ABAP Language Version #184
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 7 commits
Commits
Show all changes
22 commits
Select commit
Hold shift + click to select a range
9a0ca34
Update Repo Settings
mbtools a4a0677
Add images
mbtools 97ed8df
Update dot-abapgit.md
mbtools 02da7f6
grammar
mbtools c3e5714
Create abap-lanuage-version.md
mbtools d7698d9
add abaplint
mbtools 13118da
Merge branch 'main' into mbtools/abap-lang-vers
larshp a640dc5
Merge branch 'main' into mbtools/abap-lang-vers
mbtools 1a45f32
Add summary table
mbtools 40f7b80
Add "ignore" option
mbtools 70dbe4a
Clarity
mbtools 59d4a4a
Merge branch 'main' into mbtools/abap-lang-vers
mbtools 6ac87ef
Merge branch 'main' into mbtools/abap-lang-vers
mbtools 6328d4a
4 to 5
mbtools 9a7d8c1
Clarify import/activation errors
mbtools 26418b9
remove "not"
mbtools 81df85a
Merge branch 'main' into mbtools/abap-lang-vers
mbtools ca3c1d7
Merge branch 'main' into mbtools/abap-lang-vers
larshp a34c370
Supported object types
mbtools e7f8797
Update ToC, fix links
mbtools e7f9205
Fix case
mbtools ac40e9c
Add column to object table
mbtools File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
--- | ||
title: Language Version | ||
category: reference | ||
order: 80 | ||
--- | ||
|
||
## ABAP Language Version | ||
|
||
With the 7.52 release, SAP provides the usage of the ABAP language version information in the on-premises world. | ||
|
||
abapGit has been enhanced to support consistent handling of the ABAP language version across the different abapGit "flavors" (open-source / part of SAP BTP ABAP Enviromnent). | ||
|
||
:::warning | ||
Using ABAP Language Version in abapGit is still an experimental feature. | ||
::: | ||
|
||
### Settings | ||
|
||
There are four possible [settings](./repo-settings/dot-abapgit.html) for defining how the ABAP language version is handled by abapGit: | ||
|
||
Setting | Description | ||
--------|------------ | ||
Any (default) | Object-specific ABAP Language Version | ||
Standard ABAP | Only objects with "Standard ABAP" are allowed | ||
ABAP for Key Users | Only objects with "ABAP for Key Users" are allowed | ||
ABAP for Cloud Development | Only objects with "ABAP for Cloud Development" are allowed | ||
|
||
### Any ABAP Language Version | ||
|
||
If you do not define the ABAP language version (default setting "Any"), you can mix objects of any ABAP language version in a repository. | ||
|
||
:::info | ||
This setting is recommended for cross-platform repositories that should run on-premises as well as on BTP. | ||
::: | ||
|
||
#### Export | ||
|
||
When serializing objects, the ABAP language version will be part of the metadata of each object. | ||
mbtools marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
#### Import | ||
|
||
When deserializing objects, abapGit will set the ABAP language version according to the setting of the root package of the repository (which is limited by the system environment and software component of the package). | ||
|
||
### Standard ABAP, ABAP for Key Users, ABAP for Cloud Development | ||
|
||
If a specific ABAP language version is defined, then all objects in the repository must adhere to this ABAP language version. If not, you will receive an error message. | ||
mbtools marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
:::info | ||
This setting is recommended for repositories that support only one platform. | ||
::: | ||
|
||
### Export | ||
|
||
When serializing objects, the ABAP language version will **not* be part of the metadata of each object. | ||
mbtools marked this conversation as resolved.
Show resolved
Hide resolved
mbtools marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
### Import | ||
|
||
We distinguish two cases: | ||
|
||
1. The root package has the same or an undefined ABAP language version as specified in the repository | ||
|
||
When deserializing objects, abapGit will set the ABAP language version according to the setting in the repository. | ||
|
||
2. The root package has a different ABAP language version than specified in the repository | ||
|
||
When deserializing objects, abapGit will raise an error message alerting you to the mismatch. To import objects, change the ABAP language version of your root package to match the repository. | ||
However, this might not be possible since you can't use "Standard ABAP" on BTP, for example. | ||
|
||
### Examples | ||
|
||
If your project uses programs, function modules, or classes that are not released for ABAP for Cloud Development, then set the ABAP language version to "Standard ABAP". | ||
This will ensure, that users will not be able to install the project on BTP. | ||
mbtools marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
The other way around, if your project uses exclusively objects and code released for ABAP for Key Users or Cloud Development, then set the ABAP language version accordingly. | ||
This will ensure, that only objects compatible with BTP will be included in your project. | ||
|
||
:::info | ||
You can use [abaplint](https://github.com/abaplint/abaplint/blob/main/docs/getting_started.md) to automatically check for compatibility. | ||
::: | ||
|
||
### Further Information | ||
|
||
[Standard Documentation](https://help.sap.com/doc/abapdocu_752_index_htm/7.52/en-US/abenabap_versions.htm) | ||
[Cloud Documentation](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/abenabap_versions.htm) | ||
[Blog and FAQ](https://blogs.sap.com/2022/09/09/abap-language-versions-faqs/) |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.