Compare commits

...

640 Commits

Author SHA1 Message Date
Marc Bernard
34ec448b39
Refactor: Persistence factory (#7229)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2025-04-30 11:27:13 +02:00
Marc Bernard
efbc0245ce
Fix trigger location for zcx_abapgit_exception (#7221)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Thanks!

Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-04-29 14:29:46 +02:00
Marc Bernard
220417e73f
FDT0: Remove comparator (#7227)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
2025-04-28 11:51:38 +02:00
Christian Günter
781313ad7c
SAXX: implement is_locked + refactorings (#7226) 2025-04-28 11:07:14 +02:00
Christian Günter
402ec37b3b
refactor DDLS + DDLX + DCLS (#7224)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2025-04-25 13:29:18 +02:00
Marc Bernard
5e087d33c7
Fix some class descriptions (#7223)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-04-25 13:25:56 +02:00
Lennart Emmerich
267c210c5a
STVI: Fix unstable diff when shdtvsvciu or shdfvguicu are not initial (#7225) 2025-04-25 13:04:37 +02:00
Lennart Emmerich
2b0f4e74d9
SCVI: Fix unstable diff when shdsvfvci or shdguixt are not initial (#7222)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2025-04-24 12:07:17 +02:00
Lars Hvam
3f673ebe8c
update npm deps + E0* deps + back button on flow page (#7217)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
2025-04-22 13:12:33 +02:00
Marc Bernard
b9389bde33
Add support for ABAP Language Version for generic (#7218)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-04-22 08:20:12 +02:00
Christian Günter
cc414d26e0
New error handling for not supported object types (#7215)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-04-22 06:43:52 +02:00
Lars Hvam
becfe9bb08
bugfix: offline repo pull /data/ (#7216)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2025-04-21 16:27:32 +02:00
Lars Hvam
c21dc53e00
user record: interface and factory (#7212)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2025-04-18 09:46:58 +02:00
Lars Hvam
96a010614b
refactor zcl_abapgit_user_record (#7211)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
2025-04-16 07:59:21 +02:00
Lars Hvam
1fa75ebb47
zcl_abapgit_gui_page_sett_repo: remove use of T002T (#7209)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
Co-authored-by: Marc Bernard <marc@marcbernardtools.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2025-04-14 14:41:59 +02:00
Lars Hvam
b6e375b3d6
update npm dependencies (#7202) 2025-04-14 09:34:05 +02:00
Lars Hvam
b2d0d98ec0
user record: refactor get_title() for open-abap compatibility (#7210) 2025-04-14 09:29:39 +02:00
Marc Bernard
c0ce2cb2e2
Add clarifying comment to exists check (#7207)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2025-04-10 20:32:57 +02:00
Marc Bernard
b55791765f
Fix zcl_abapgit_serializer test (#7205) 2025-04-10 20:10:41 +02:00
Christian Günter
a4019f38fb
HTTP: Detect if it's supported in constructor (#7204) 2025-04-10 20:02:07 +02:00
Christian Günter
d79887c0a2
Repo Refactoring: Use interfaces instead of classes (#7189)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-04-10 08:52:51 +02:00
Marc Bernard
aaec314b14
Repo Overview: Add sort by online/offline repo (#7200)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2025-04-09 20:00:26 +02:00
Lars Hvam
edfbfab6ce
web test: move files and fixes (#7195)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2025-04-08 15:57:59 +02:00
Lars Hvam
301f860821
move zcl_abapgit_gui_hotkey_ctl (#7192)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2025-04-08 11:13:50 +02:00
Lars Hvam
d73e00bc8a
remove use of PGMID (#7199) 2025-04-08 11:10:59 +02:00
Lars Hvam
12d6b480b1
bugfix zif_abapgit_sap_package~read_description (#7198) 2025-04-08 07:40:57 +02:00
Lars Hvam
6302fa6b1c
refactor select TDEVCT (#7196) 2025-04-08 07:18:37 +02:00
Lars Hvam
15584a3da7
flow: extract logic to new class (#7197) 2025-04-08 07:15:21 +02:00
Lars Hvam
fc76035b7b
decouple utils from zif_abapgit_git_definitions (#7193) 2025-04-08 07:13:08 +02:00
Lars Hvam
bb9462f979
new class zcl_abapgit_ui_core_factory (#7194) 2025-04-08 07:10:40 +02:00
Lars Hvam
8b9dd0fdfa
zcl_abapgit_code_inspector, remove friend (#7191) 2025-04-08 07:01:02 +02:00
Marc Bernard
220cb9aad1
Fix checking support of object types (exit) (#7187)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-04-07 16:31:44 +02:00
Marc Bernard
51d115a1c1
Add style option for HTML rendering (#7190)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2025-04-06 10:19:21 +02:00
Marc Bernard
12b93deb1e
Debug info: Fix exit list in standalone (#7188) 2025-04-06 10:06:16 +02:00
Marc Bernard
db0526a3b8
Add some icons (#7186)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-04-04 12:17:27 +02:00
Lars Hvam
8a72e762f5
update devcontainer.json (#7184)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2025-04-03 21:21:18 +02:00
Marc Bernard
663b2b5583
Feature: Objects locked in multiple requests (#7178)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
Co-authored-by: Christian Günter <christianguenter@googlemail.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-04-01 18:31:57 +02:00
Marc Bernard
e7af0fb6a0
Fix "Maximum number of GUI sessions reached" (#7176)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-04-01 18:07:14 +02:00
Lars Hvam
0ea8aa0f43
update npm dependencies (#7167) 2025-04-01 18:03:01 +02:00
Marc Bernard
5145a6691f
Refactor repo type in overview (#7177) 2025-04-01 16:07:22 +02:00
Marc Bernard
74c0979a8c
Remove http-agent from factory (#7182)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2025-04-01 06:57:55 +02:00
Christian Günter
d9c4483cc2
Fix AFF unit tests for lower releases (#7181)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2025-03-31 13:55:41 +02:00
Marc Bernard
a0e7a47f7a
Refactor: Decouple code inspection from factory (#7180)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-03-31 10:43:06 +02:00
Marc Bernard
bc104e396e
Add "Refresh" to repository list (#7179) 2025-03-31 10:14:41 +02:00
Marc Bernard
8e02089f8f
Add "Back" button to diff and where-used pages (#7174)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2025-03-29 14:05:18 +01:00
Jon Friesen
8984655d86
delete obsolete objects when pulling in the bgd (#7170)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2025-03-29 12:48:56 +01:00
Christian Günter
0af09e13bd
add pragma for secondary key warnings (#7173)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2025-03-29 12:43:01 +01:00
Christian Günter
464afa8193
Page Stage: fix case logic (#7168)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2025-03-29 12:37:24 +01:00
Marc Bernard
b45a4969ba
Fix syntax errors in lower releases (table keys) (#7172)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2025-03-29 10:10:48 +01:00
Christian Günter
ec12f18b62
using existing secondary keys (#7169) 2025-03-29 08:34:20 +01:00
Marc Bernard
aa6e97ac99
Replace sotr_head* update with API (#7165)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-03-25 15:24:17 +01:00
Lars Hvam
1557d8c295
add back button to stage page (#7166) 2025-03-25 15:06:59 +01:00
Christian Günter
90219ae271
add actionbars to command palette (F1) (#7164)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2025-03-24 19:26:10 +01:00
Lars Hvam
1ef41d3f77
OO factory, fix type (#7163) 2025-03-24 17:37:35 +01:00
Mike Pokraka
18cf90740d
Fix type mismatch dump (#7162) 2025-03-24 15:53:32 +01:00
Marc Bernard
bfc2518658
Feature: Change Repo Package (#7131)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-03-24 14:31:43 +01:00
Lars Hvam
079e7ce797
refactor zcl_abapgit_abap_language_vers testclass (#7160) 2025-03-24 14:21:08 +01:00
Lars Hvam
dd9790d9bd
update npm + actions dependencies (#7157)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2025-03-14 10:02:43 +01:00
github-actions[bot]
4469771f01
ajson, Automatic Update (#7158)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: larshp <larshp@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-03-13 16:29:54 +01:00
Marc Bernard
d374436ae3
Refactor: Decouple staging logic from factory (#7155)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-03-13 16:19:29 +01:00
Marc Bernard
2f0281b6ed
Fix unit tests for non-Unicode systems (#7151) 2025-03-13 16:14:41 +01:00
Łukasz Pęgiel
39fe716022
Staging issue when folder name is in uppercase (#7150)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Marc Bernard <marc@marcbernardtools.com>
2025-03-10 20:01:22 +01:00
Ben9ka
adc1dad930
Fix http service githandler in older releases (#7149)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-02-27 09:26:31 +01:00
Marc Bernard
91dd6873ab
Fix highlight of CR, LF, CRLF (#7153)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-02-23 13:28:19 +01:00
Marc Bernard
ae9ec4c141
Fix version badge (#7152) 2025-02-23 13:12:02 +01:00
Marc Bernard
90cb2201fa
Fix dump in non-Unicode systems (#7146)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-02-22 15:50:21 +01:00
Mike Pokraka
188bf8d69a
Filter nonexistent FMs from inconsistent FUGR (#7147)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2025-02-17 11:52:23 +01:00
Marc Bernard
626f23d72a
Exit: Enhance any toolbar (#7132)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2025-02-15 09:24:33 +01:00
Marc Bernard
2814ade981
Fix saving inconsistent default transport (#7144)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2025-02-14 19:08:07 +01:00
Marc Bernard
d99cc7a9cf
Fix color of selector (#7141)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2025-02-13 15:31:33 +01:00
Ben9ka
f45425f665
Added support for COTA - Communication Target (#7143) 2025-02-06 14:27:50 +01:00
Florian Dupret
160f10c38b
Execute WDCC after import method (#7140)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2025-02-06 10:44:14 +01:00
Marc Bernard
f6683582d1
Remove unused exceptions (#7145) 2025-02-05 23:40:51 +01:00
Fabian Lupa
527d512409
Enable ABAP Language Version support for DDLX (#7136)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2025-01-23 21:31:02 +01:00
Fabian Lupa
99fe0f5240
Enable ABAP Language Version support for DCLS (#7135)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2025-01-23 21:29:14 +01:00
Fabian Lupa
c08d33bb4a
Enable ABAP Language Version support for DDLS (#7134)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2025-01-23 21:23:25 +01:00
Christian Günter
5182ed6213
Patch: fix 'invalid filename' error if filename is empty (#7126)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2025-01-23 12:10:56 +01:00
Christian Günter
fd38cd873c
add edge case for diff calculation - tab vs space (#7130)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2025-01-16 09:38:29 +01:00
Marc Bernard
bdbfd57248
CHDO: Refactor logic for generated objects (#7129)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2025-01-15 17:41:04 +01:00
Marc Bernard
ee9e32d442
Refactor zcx_abapgit_exception (#7123)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2025-01-10 13:01:11 +01:00
Marc Bernard
3daf4d3f5c
Fix dump in language mapping (#7124)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
2025-01-08 19:25:52 +01:00
Marc Bernard
a8cb44d548
1.131.0 (#7122) 2025-01-01 10:57:34 -05:00
ThomasPloski
9f00aac592
Object Handler of type HTTP (#7100)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Marc Bernard <marc@marcbernardtools.com>
2025-01-01 10:52:48 -05:00
Marc Bernard
97f5435b81
Remove need to parallel_generators server group (#7119)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-30 11:00:14 +01:00
Marc Bernard
4b6ac3c2a6
Fix dump when converting xstring to bintab (#7120)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2024-12-20 07:27:16 +01:00
Marc Bernard
1fac2a71e2
Fix indent of <pre> tags in HTML (#7118)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
2024-12-18 16:21:26 +01:00
Marc Bernard
b7bb00d7ee
Limit number of GUI sessions (#7080)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-18 09:26:08 -05:00
Lars Hvam
31e860bde7
update npm dependencies (#7078)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2024-12-18 08:15:54 +01:00
Marc Bernard
e16e3d3ac6
FUGS: Fix activation error (#7115)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2024-12-17 08:59:39 -05:00
Marc Bernard
cf9da3c06d
Enhance logging with message id and number (#7111)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-10 15:17:28 -05:00
Marc Bernard
7dd14b7ccf
USCA: Fix missing transport entry (#7110)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-10 13:31:04 +01:00
Marc Bernard
3d3cae3990
IDOC/IEXT: Fix deserialize in background (#7113) 2024-12-10 07:50:34 +01:00
Marc Bernard
bc36dcc44b
Fix RFC error handling (#7102)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-09 08:56:39 -05:00
Marc Bernard
621f0192ef
Fix missing longtexts (#7108)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-08 11:47:37 +01:00
Marc Bernard
f24f0c9589
MSAG: Fix deletion of message longtexts (#7109)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-06 17:09:18 +01:00
Marc Bernard
fef6bf49ca
Fix generic table types (#7105)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-06 10:25:58 -05:00
Marc Bernard
53bad5bd20
Adjust object descriptions (#7101)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-06 10:51:12 +01:00
Marc Bernard
d21c8a3cfe
Fix dark theme CSS whitespace (#7104)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-06 10:47:39 +01:00
Marc Bernard
0e6c6fc120
Fix extended check issues - Part 9 (#7106)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2024-12-06 10:18:50 +01:00
Marc Bernard
cb58678c79
Refactor: Types related to object interface (#7096)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-05 18:01:09 +01:00
Marc Bernard
da3f5e2a08
Fix extended check issues - Part 8 (#7094)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-05 17:56:41 +01:00
Marc Bernard
697bc7f51d
Fix extended check issues - Part 7 (#7092)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-05 17:53:17 +01:00
Marc Bernard
b835900776
Fix extended check issues - Part 6 (#7091)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-05 17:50:17 +01:00
Marc Bernard
c266a4826c
Fix extended check issues - Part 5 (#7090)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-05 17:45:22 +01:00
Marc Bernard
03dfdb072c
Fix extended check issues - Part 4 (#7089)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-05 17:41:31 +01:00
Marc Bernard
a23c1d6d58
Fix extended check issues - Part 3 (#7088)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-05 17:35:53 +01:00
Marc Bernard
6f0dfc5a81
Fix extended check issues - Part 2 (#7087)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-03 07:21:05 +01:00
Marc Bernard
900952495e
Fix extended check issues - Part 1 (#7086)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-12-03 07:18:52 +01:00
Marc Bernard
994cbf8f92
Fix error handling in exception viewer (#7095)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2024-12-02 09:27:48 -05:00
Marc Bernard
d31627d6a6
MSAG: Fix error handling during deletion (#7093) 2024-12-02 09:00:46 -05:00
Marc Bernard
65d08de249
SRVB: Clear fields and fix deserialize order (#7085)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-11-29 13:13:19 +01:00
Marc Bernard
d9a2fc8fdf
Fix unit test in 702 - Part 3 (#7084)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-11-29 13:01:06 +01:00
Marc Bernard
e77abaea8c
Fix unit test in 702 - Part 2 (#7083)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-11-29 12:59:30 +01:00
Marc Bernard
a1535908ec
Fix unit test in 702 - Part 1 (#7082) 2024-11-29 08:23:59 +01:00
Marc Bernard
93935b3dfb
VIEW: save tddat entries to transport (#7042)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-11-21 14:42:16 +01:00
Lars Hvam
aa2e082dcb
longtexts: workaround strange object names dump (#7077)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2024-11-15 12:56:02 +01:00
ConjuringCoffee
8f793b7b9e
Fix language conversion for language A (#7076)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
2024-11-12 18:17:51 -05:00
Lars Hvam
a58de530d7
Update changelog.txt (#7073)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2024-11-04 10:31:54 +01:00
Marc Bernard
8bf5f0c4f8
1.130.0 (#7068)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-11-04 10:26:52 +01:00
Marc Bernard
c83ebbe82c
SSFO: Store smartform code as separate ABAP files (#7071)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-11-04 10:23:51 +01:00
Marc Bernard
996d26ac3a
WDYN: Store controller code as separate ABAP files (#7069)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-11-04 10:19:56 +01:00
Marc Bernard
5ee49e33e8
PROG: Store flow logic as separate ABAP files (#7066)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <marc@abappm.com>
2024-11-04 10:11:38 +01:00
Marc Bernard
b2d795d8b6
SHI8: Avoid package popup (#7072)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2024-11-02 11:45:54 -04:00
ThomasPloski
454607953d
SAJT: Support for Application Job Templates (#7027)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-10-31 08:11:41 +01:00
ThomasPloski
713c258ff8
SAJC: Support for Application Job Catalog Entry (#7026)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-10-31 08:03:17 +01:00
ThomasPloski
f97818df21
APLO: Support for Application Log Objects (#7025)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-10-31 07:57:02 +01:00
Marc Bernard
3b77c130ee
Fix failing AFF unit tests in dev edition 2022 (#7070) 2024-10-31 07:51:29 +01:00
Marc Bernard
57d785ac98
Show diffs in case of trailing spaces (#7062)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-10-29 05:40:08 +01:00
Lars Hvam
e4bb6ec3ef
update npm dependencies (#7067) 2024-10-29 05:35:01 +01:00
github-actions[bot]
e83a31ebaf
ajson, Automatic Update (#7065)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: larshp <larshp@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-10-28 08:17:59 +01:00
Marc Bernard
436f23c899
TABU: Display transport requests (#7063)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-10-28 08:16:12 +01:00
Marc Bernard
af8f1e23df
Remove generic comments (#7064)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2024-10-22 20:26:25 -04:00
gardian12
21c8865209
Added enhanced method resolution for background exit (#7059)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-10-22 10:04:40 -04:00
Lars Hvam
b1abcd8764
update npm dependencies (#7043) 2024-10-16 15:45:26 +02:00
Mike Pokraka
aee4d0aedd
Don't discard includes of nonexistent FUGR (#7053)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-09-24 00:25:28 +02:00
fvalves
8997e51b32
Comparing GET TIME STAMP and sy-datum and sy-uzeit only works if the user is in UTC (#7031)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-09-16 13:06:50 -04:00
Lars Hvam
a6c073409e
align TYPE expressions (#7050) 2024-09-13 10:47:32 +02:00
fvalves
ca1d349ca5
Enable CDS types (#7048) 2024-09-12 11:44:02 -04:00
Lars Hvam
cc9b9ef08e
bugfix: git chmod = symbolic link (#7047) 2024-09-12 05:47:41 +02:00
Lars Hvam
bd060315d0
abaplint.json move important stuff to start (#7046) 2024-09-11 18:46:12 +02:00
Lars Hvam
b751ff519e
basic FUGS serialization (#7045)
Co-authored-by: Marc Bernard <marc@marcbernardtools.com>
2024-09-11 13:52:41 +02:00
Lars Hvam
41619e6e4d
update npm dependencies (#7032)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2024-09-05 16:04:13 +02:00
Marc Bernard
a02632edcb
Add package check when creating repository (#7037)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-09-05 09:03:11 -04:00
Marc Bernard
65f8fa87ac
SFPF: Fix check if object exists (#7041)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-09-05 08:46:28 -04:00
Marc Bernard
0525d01394
SFPF: Add syntax highlighting for xdp files (#7040)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-09-05 10:31:43 +02:00
Marc Bernard
4c40ca0232
JOBD: Clear changedby field (#7039) 2024-09-05 07:51:42 +02:00
Marc Bernard
fd673dac68
PROG: Support dynpros with splitter control (2) (#7038)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2024-09-04 15:36:35 -04:00
Marc Bernard
019cfe8152
Fix CX_SY_ZERODIVIDE dump in progress bar (#7036)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2024-09-04 10:45:56 -04:00
Marc Bernard
84656774fd
PROG: Support dynpros with splitter control (#7035) 2024-09-04 10:23:50 -04:00
fvalves
be5ec9ed29
Added test attributes to test class in ZCL_ABAPGIT_PROPERTIES_FILE (#7030)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-08-29 16:28:46 +02:00
fvalves
ff60057e62
Enable deserialization of DSFD, DSFI and DRAS (#7029)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2024-08-29 09:46:23 +02:00
Albert Mink
72a1a13033
[AFF] experimental: Serialize all languages (#7022)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2024-08-27 09:44:32 +02:00
Albert Mink
1339a71969
Filenames for translation are case sensitive (#6995)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-08-20 10:21:03 -04:00
Albert Mink
d28dcaef29
Language conversion sap2/sap1 (#7017)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2024-08-20 15:13:28 +02:00
Lars Hvam
0f74ad944f
dont hide experimental settings, just disable it (#7014)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2024-08-13 09:22:55 +02:00
fvalves
2c9898e649
DSFI: Updated object handler to match the latest AFF definition (#7013) 2024-08-07 16:10:06 -04:00
Lukas
e93934d1cf
Add support for Software Component Relations (#7012)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-08-06 11:02:22 +02:00
Christian Günter
1e0ff12c60
fix sticky header with browser control warning (#6997)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-08-06 10:54:49 +02:00
Lars Hvam
0d6d999e62
remove 200% icon scaling (#7003)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2024-08-05 18:08:54 +02:00
fvalves
82bed9224c
DSFI: CDS Scalar Function Implementation (#6952)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-08-05 14:55:00 +02:00
Lars Hvam
a1a65d2e48
update to docker compose v2 (#7010) 2024-08-05 13:40:22 +02:00
Lars Hvam
5dd4d83f3f
testing: transpiled abapGit running on web via express js (#7008)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2024-08-02 08:06:32 +02:00
Lars Hvam
d4c7365725
router: extract to method (#7009)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2024-08-01 15:51:22 +02:00
Lars Hvam
d9a00a5f55
README.md: update credits, add AFF (#7007) 2024-08-01 15:43:50 +02:00
Lars Hvam
5d59d6f8d2
html: refactor setting debug mode (#7005)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2024-07-31 18:22:04 +02:00
Lars Hvam
1c2b65814f
zcl_abapgit_timer: delete unit tests (#7004) 2024-07-31 18:17:06 +02:00
Lars Hvam
27e767e935
zcl_abapgit_function_module: cloud compatiblity (#7002) 2024-07-31 18:07:58 +02:00
Lars Hvam
36d91e973e
where-used: remove public use of RSFINDLST (#6992)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
2024-07-30 09:30:53 +02:00
Abo
c5a6aed115
fix: syst_langu does not exist on older releases (#6999)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-07-25 21:52:35 +02:00
Albert Mink
a120ce66b0
Fix sap2/sap1 for AFF experimental (#6993)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2024-07-23 12:36:06 +02:00
fvalves
a7e984151b
DRAS: CDS Aspect (#6953)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-07-23 10:23:18 +02:00
fvalves
b9ac1265f4
DSFD: CDS Scalar Function Definition (#6951)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-07-23 10:21:09 +02:00
Lars Hvam
8d91119371
uccp(), cloud compatibility (#6991) 2024-07-23 10:15:41 +02:00
Lars Hvam
8b7c4862f3
update npm dependencies (#6973)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2024-07-23 08:20:46 +02:00
Albert Mink
f9bd01021d
Extend logic to detect BCP47 languages (#6986)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-07-22 14:28:16 +02:00
Albert Mink
d8afb7bf42
Pass variable to METH (#6987) 2024-07-18 14:10:48 +02:00
Marc Bernard
872ed2758f
Allow staging for empty repositories (#6981)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2024-07-14 09:04:10 -04:00
Albert Mink
faac8542e4
Clear variables when getting i18n files (#6978)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2024-07-11 14:01:56 +02:00
Albert Mink
a7fbf2205f
Fix deserialize SEOCLASSTX for INTF [AFF] (#6983)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-07-11 13:37:52 +02:00
Christian Günter
7854587a5f
downport (#6984) 2024-07-11 07:23:43 -04:00
Albert Mink
c1c36a5780
Simplify the JSON2ABAP (#6979)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
2024-07-11 08:45:32 +02:00
ellima
dd77c9930f
BGQC: Add support for Background Processing Context (#6974)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-07-10 15:38:42 -04:00
ViktoriaFreidel
68e507604c
UIAD: Add support for Launchpad App Descriptor Item (#6969)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-07-10 15:32:27 -04:00
github-actions[bot]
1269360946
ajson, Automatic Update (#6977)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: larshp <larshp@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-07-09 21:22:13 +02:00
Albert Mink
263a58e84f
Fix typo in BCP47 to SAP1 conversion (#6971)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-07-09 21:17:14 +02:00
Lars Hvam
840ec2d8f0
update npm dependencies (#6972)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
2024-07-06 10:52:40 +02:00
Marc Bernard
8b2ab1e5d9
CLIF: Add missing translations for classes and interfaces (#6963)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-07-04 13:16:40 +02:00
Marc Bernard
9261028dcb
Fix dump in activation error handling (#6967) 2024-07-03 12:04:03 +02:00
Mike Pokraka
e4540da772
CDBO: Fix missing parameters in constructor (#6966)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
2024-07-03 09:06:20 +02:00
Marc Bernard
618f5ec279
SXSD: Fix check if BADI exists (#6961)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
2024-07-01 17:05:25 +02:00
Marc Bernard
7d67620b03
ENHO: Fix diff in generated comments of class enhancements (#6962) 2024-07-01 17:01:29 +02:00
Marc Bernard
121f580abb
1.129.0 (#6954)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-07-01 10:01:40 +02:00
Alexander Tsybulsky
b4f14ab6e8
TABL: Clear DBINCLEXCL and DBSYSSELx fields (#6960)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-07-01 09:55:55 +02:00
Mike Pokraka
b87f5c4ee8
Read-only support for SXSD - Classic BAdI definition (#6958)
Some checks failed
main-build / build-merged (push) Has been cancelled
main-build / auto-tag (push) Has been cancelled
main-build / coverage (push) Has been cancelled
main-build / auto-tag-artifact (push) Has been cancelled
ajson mirror / pr_ajson_changes (push) Has been cancelled
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-06-28 14:11:16 +02:00
thorsten-wolf-neptune
2e63907565
data serializer: fix carriage return problem (#6957)
Some checks are pending
main-build / build-merged (push) Waiting to run
main-build / auto-tag (push) Waiting to run
main-build / auto-tag-artifact (push) Blocked by required conditions
main-build / coverage (push) Waiting to run
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-06-27 16:56:14 +02:00
Marc Bernard
55f9b49577
Add parameters to map_object_to_filename (#6955)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-06-27 16:44:22 +02:00
Lars Hvam
a96e581fa4
update npm dependencies (#6931) 2024-06-17 07:44:17 +02:00
Alexander Tsybulsky
f0a6532deb
Exclude files from remote (#6942)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-06-16 07:34:23 +02:00
Christian Günter
f486167cc4
Fix yank mode - copy to clipboad (#6946) 2024-06-12 13:16:47 +02:00
Marc Bernard
3929cfab17
Fix folder logic buffer (#6945) 2024-06-11 16:28:50 +02:00
Marc Bernard
22e6df1d4d
Remove duplicate clipboad action (#6944) 2024-06-11 16:15:53 +02:00
Marc Bernard
4bf6e07235
Small performance improvement in folder logic (#6941) 2024-06-08 21:01:38 +02:00
Francisco Milán
376a7d8be8
Set Default Git User Details (#6920)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-06-06 07:03:17 +02:00
Marc Bernard
38e785ddb0
Sync UI theme in dark mode (#6940)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2024-05-29 09:13:45 +02:00
Lars Hvam
e2c625f2d9
HOOK: catch exception (#6937) 2024-05-24 13:00:21 +02:00
Lars Hvam
11a7e58237
ENHO: workaround dump during serialization (#6935) 2024-05-23 15:30:41 +02:00
Francisco Milán
13fd9a3897
Set Character Limit for "Table" Field in Data Config page (#6934)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-05-23 14:24:08 +02:00
Lars Hvam
667ac8966a
bugfix, new pull page: decide package warnings (#6932) 2024-05-21 17:46:36 +02:00
Francisco Milán
01544d86c6
Fix Issue Encountered on "Data Config" Page. (#6913)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-05-21 07:00:33 +02:00
Dennis Schaaf
32f002893c
VIEW: Add authorization group to serialize and deserialize (#6918)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-05-18 10:33:43 +02:00
ThomasPloski
2973cb4cba
CDBO Object Handler (#6930) 2024-05-15 08:04:47 +02:00
Mike Pokraka
40c5cd7212
Suppress popup when using background API (#6926)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-05-10 17:22:46 +02:00
Katharina Wurz
29baa5a152
Use bcp47 language code for AFF (#6915)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2024-04-24 16:40:58 +02:00
Lars Hvam
a18b9c7f81
update eslint to 9 + update actions (#6910) 2024-04-21 11:32:42 +02:00
Kai Busse
6645fcecd5
Improve error message for SUSH objects not being supported. (#6916) 2024-04-19 14:28:10 +02:00
Alexander Tsybulsky
3bfb2be6ab
Where used page (#6897) 2024-04-19 07:51:59 +02:00
Marc Bernard
9b10bba142
DEVC: Fix "Package must be assigned to the software component LOCAL" (#6912) 2024-04-15 17:14:04 +02:00
Francisco Milán
0c4e5f5495
Fix bug in "Object to Files" Page. (#6908)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-04-14 09:41:22 +02:00
Marc Bernard
a648f1ef51
DEVC,NSPC: Serialize software component for add-ons (#6891) 2024-04-14 09:37:02 +02:00
Alexander Tsybulsky
f60e92d9b9
Template page (#6899) 2024-04-10 17:21:03 +02:00
Marc Bernard
ecdd17162a
SOTS: Remove from TADIR selection (#6906) 2024-04-10 16:30:33 +02:00
Marc Bernard
a972831441
Change message if local packages got lost (#6905) 2024-04-10 13:57:18 +02:00
ConjuringCoffee
6459b0c067
Integrate repo interface into online repo interface (#6894)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-04-08 15:40:52 +02:00
Marc Bernard
993466a1c9
Refactor: Translations for AFF (#6904) 2024-04-08 15:12:16 +02:00
Marc Bernard
3acb94ef05
1.128.0 (#6903) 2024-04-05 14:47:48 +02:00
Christian Günter
493cfceedd
Make HTTP/1.1 new default in abapGit (#6902)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-04-05 14:43:19 +02:00
Christian Günter
6980aae774
add specific error message for 426 http error (#6901)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-04-05 13:36:12 +02:00
Marc Bernard
412cd9995b
Refactor: i18n filename logic (#6892)
Co-authored-by: Albert Mink <albert.mink@sap.com>
2024-04-05 12:57:27 +02:00
Marc Bernard
72d80c1120
Update description of i18n classes/interfaces (#6895) 2024-04-03 15:46:07 +02:00
Marc Bernard
3032db29d7
ENHO/ENHS: Add missing longtexts (#6890) 2024-04-02 17:34:09 +02:00
Lars Hvam
2c30602e10
item graph: performance (#6885) 2024-04-02 10:09:38 +02:00
Francisco Milán
30258f3898
Limit Package Name to 30 characters (#6889) 2024-04-02 08:36:20 +02:00
Lars Hvam
d63c162ac6
fix unit tests after gui classes moved (#6887) 2024-04-01 10:20:03 +02:00
Lars Hvam
6533a40793
ZAG1 object type for integration testing (#6652) 2024-04-01 09:04:06 +02:00
Francisco Milán
25091cc6fb
Restore Variable lv_commitmsg_comment_length (#6886) 2024-03-31 09:23:15 +02:00
Marc Bernard
52c9bd1847
Fix changing transport type when setting original system (#6870)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-03-29 12:56:35 +01:00
Lars Hvam
483d852823
update npm dependencies (#6854) 2024-03-29 12:05:55 +01:00
Lars Hvam
9840d88ea4
Create SECURITY.md (#6882) 2024-03-29 06:51:11 +01:00
Francisco Milán
9ad328b681
Fix Hint for "Maximum Length of Comment" Field (#6877) 2024-03-22 18:28:59 +01:00
Marc Bernard
505c73a27c
Avoid popup on exit after saving remote settings (#6875)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-03-22 15:45:16 +01:00
Marc Bernard
67ec3980b5
Refactor: Determine i18n parameters (#6869)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-03-21 14:06:10 +01:00
Francisco Milán
c40964ec33
Fix Unexpected Functionality for "Maximum Length of Comment" Field (#6871)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-03-21 12:06:32 +01:00
ViktoriaFreidel
17a59c4a35
UIPG, UIST: Add support for Launchpad Page and Space Templates (#6873)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-03-21 11:57:48 +01:00
Albert Mink
d260e3dfbb
AFF: deserialize translation files (#6830)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-03-19 15:27:46 +01:00
Alexander Tsybulsky
cefc4dde7a
Code inspector pages improvements (#6862) 2024-03-19 06:04:47 +01:00
Abo
cbda2ffb78
SFPI: exists() also look for inactive objects (#6867) 2024-03-18 17:32:01 +01:00
Francisco Milán
57ea8ba7fc
Fix typos within the code base (#6864) 2024-03-17 18:32:49 +01:00
Francisco Milán
105a202f8c
Fix typos within the code base (#6858) 2024-03-16 10:24:16 +01:00
Marc Bernard
fe457a0349
apack: additional namespace case (#6851) 2024-03-14 16:48:15 +01:00
Marc Bernard
463f112c85
SICF: Include alternate service name (#6853) 2024-03-14 15:43:19 +01:00
Marc Bernard
668da207aa
IDOC: Fix MOVE_TO_LIT_NOTALLOWED_NODATA (#6852) 2024-03-12 13:24:38 +01:00
Francisco Milán
687c91bcf5
Remove duplicate labels from Command Palette. (#6821)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Marc Bernard <marc@marcbernardtools.com>
2024-03-12 10:19:44 +01:00
Einar Eiríksson
9295929903
apack: fix namespace problem (#6841)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-03-11 18:45:25 +01:00
Christian Günter
a06530ee31
Fix warning in unit test (#6842)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-03-11 07:11:33 +01:00
github-actions[bot]
6183f2d30d
ajson, Automatic Update (#6844)
Co-authored-by: larshp <larshp@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-03-11 06:41:43 +01:00
Lars Hvam
f7d2384e16
update npm dependencies (#6831) 2024-03-11 06:31:09 +01:00
Alexander Tsybulsky
b3f2085443
Group pages (#6839) 2024-03-09 13:52:43 +02:00
Lars Hvam
15443a6aaa
unit test page: change colours for runtime (#6833) 2024-03-05 10:19:49 +01:00
Lars Hvam
3ad85b4c58
bugfix, FORM existence (#6832) 2024-03-05 10:16:04 +01:00
github-actions[bot]
6f8a136cde
ajson, Automatic Update (#6827)
Co-authored-by: larshp <larshp@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-02-26 06:32:32 +01:00
Lars Hvam
687e43137c
update npm dependencies (#6811) 2024-02-26 06:29:10 +01:00
Marius Raht
301fdbb1b6
Fix #6825 (#6826) 2024-02-23 20:04:17 +01:00
Marc Bernard
37390a521e
Change transport type when setting original system (#6816)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-02-23 14:23:07 +01:00
Marc Bernard
0d35e9377e
HTTP connection check and improved error messages (#6806)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-02-23 14:09:38 +01:00
Michael Käsemann
c8b3cf0746
Fix Filter Application Bug (#6824) 2024-02-23 12:37:51 +01:00
Albert Mink
a7f9ceedea
Translation for INTF in AFF (#6774)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-02-21 10:50:48 +01:00
Francisco Milán
5eec8f264e
Fix Navigation Issue in "Config Display" and "Config Edit" pages. (#6820)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-02-19 22:03:02 +01:00
Francisco Milán
75836f2264
Fix bug in Personal settings page (#6818) 2024-02-19 12:36:37 +01:00
Marc Bernard
e07edcd18f
Improve form validation of text fields (#6813) 2024-02-16 09:31:29 +01:00
Marc Bernard
d76aa90cd1
Improve error messages when checking branches/tags (#6814) 2024-02-16 09:25:57 +01:00
Marc Bernard
d4f6879a18
Add "ignore sub-packages" option to package export (#6815) 2024-02-16 09:18:45 +01:00
Christian Günter
30415249ac
CLAS/INTF-SYNTAX_CHECK: Suppress status message (#6812) 2024-02-14 06:45:18 +01:00
Francisco Milán
ac09bd0334
Update the text "Submit Query" in the Command Palette. (#6810) 2024-02-13 10:06:54 +01:00
Marc Bernard
999da0ef9e
Fix unit tests for ZCL_ABAPGIT_REPO_REQUIREMENTS (#6801)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-02-11 06:44:04 +01:00
Marc Bernard
fa66b626de
XSLT: Add check for correct EOL separator (#6803)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-02-10 15:13:22 +01:00
Marc Bernard
05c9a33c57
Fix AFF unit test on lower releases (#6800)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-02-10 09:34:17 +01:00
Marc Bernard
ddd6bdb332
DIAL: Prefill package popup (#6805) 2024-02-07 17:13:02 +01:00
francisco-milan
b4e34da365
Fix bug in Command Palette (#6799) 2024-02-07 08:50:06 +01:00
github-actions[bot]
0514b2df62
ajson, Automatic Update (#6796)
Co-authored-by: larshp <larshp@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-02-05 14:54:58 +01:00
Lars Hvam
83573bf7e6
update npm dependencies (#6776) 2024-02-05 14:36:23 +01:00
Michael Schneider
178616bccc
Fix ABAP Language Version Handling for Repository Setting "Any" for AFF Object Types (#6793) 2024-02-05 14:14:58 +01:00
Lars Hvam
deb3c66a86
fix tadir read, io_dot is optional (#6790) 2024-02-02 15:01:36 +01:00
Matthias Becker
9a33f2180c
Ignore macOS "Desktop Services Store" files (#6787) 2024-02-01 10:16:54 +01:00
francisco-milan
bac2666e51
Fix typos and adjust comments within the codebase (Cont'd) (#6786) 2024-02-01 08:21:41 +01:00
francisco-milan
a1eb874ae7
Fix typos and adjust comments within the codebase (Cont'd). (#6785) 2024-01-31 06:20:03 +01:00
francisco-milan
fc67e3ef87
Remove Duplicate Entries in Command Palette (#6763)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-01-30 18:04:03 +01:00
francisco-milan
01df9ce948
Fix typos and adjust comments within the codebase (Cont'd). (#6780)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-01-30 06:36:46 +01:00
francisco-milan
4a36f0bb34
Fixing bug in Status Bar message when there's only 1 thread. (#6783) 2024-01-30 06:29:45 +01:00
André
6d0f7de2f5
user exit: include settings parameters in change_tadir() (#6775) 2024-01-29 18:12:37 +01:00
francisco-milan
374bc13a7b
Fix typos and adjust comments within the codebase (#6779) 2024-01-29 06:53:30 +01:00
francisco-milan
7bff32b718
Fix typos and adjust comments within source code. (#6778)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-01-28 09:21:14 +01:00
francisco-milan
101e519c89
Distinguish between "Global Settings" and "Repository Settings" (#6759)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-01-28 09:13:49 +01:00
Albert Mink
4b1110396d
Fix EOF, fix diff (#6773) 2024-01-26 10:27:01 +01:00
Lars Hvam
6c4f7a7c3c
zcl_abapgit_http: add note (#6771) 2024-01-25 17:34:25 +01:00
Matthias Becker
ffe847c9cc
New abapGit Handler for Object Type DTEB (#6769) 2024-01-25 14:56:13 +01:00
Matthias Becker
054a024d2c
New abapGit Handler for Object Type DRTY (#6767)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-01-25 11:03:39 +01:00
Marc Bernard
cbf0326fb0
1.127.0 (#6762) 2024-01-24 14:55:12 +01:00
Matthias Becker
5b5fe5a391
Fix empty JSON file for AFF based objects (#6766) 2024-01-24 11:12:56 +01:00
ConjuringCoffee
28b9225046
BG: Ensure auth buffer is cleared even in error case (#6756) 2024-01-18 15:30:14 +01:00
Ludwig Stockbauer-Muhr
c4639a3a12
downport 'is_gtt' in zcl_abapgit_object_tabl_ddl (#6754) 2024-01-17 09:33:44 +01:00
Christian Günter
8881860e2f
Create package popup: Fix prefill package name (#6752)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-01-16 06:48:38 +01:00
Christian Günter
ce8232104e
Fix: Cannot change repo settings without version constant (#6753) 2024-01-15 15:24:34 +01:00
Christian Günter
3c33e4c636
Downport zcl_abapgit_object_tabl_ddl (#6751)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-01-15 10:38:42 +01:00
Lars Hvam
29898d2aba
flow page, minor formatting (#6730) 2024-01-15 10:10:09 +01:00
Lars Hvam
b12f0a1932
TABL DDL serialization (#6750) 2024-01-15 08:02:52 +01:00
Ludwig Stockbauer-Muhr
7801eb8d9c
DDLS: deletes remaining TADIR entry during delete (#6745)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-01-14 07:43:01 +01:00
Christian Günter
75ecfdaffe
downport: fix syntax error in zcl_abapgit_object_tabl_ddl (#6749) 2024-01-13 23:08:25 +01:00
Marc Bernard
2b55eecaee
Allow disabling of GUI (#6744) 2024-01-10 09:50:28 +01:00
Marc Bernard
978a8aa65c
Fix APACK issues (#6743)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-01-09 12:31:46 +01:00
Christian Günter
674a04792a
Refactor ZCL_ABAPGIT_OO_FACTORY (#6742) 2024-01-09 01:29:52 +01:00
Marc Bernard
6155b640ce
Rename repository utilities (2) (#6740)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-01-08 20:47:08 +01:00
Marc Bernard
75b6efff09
Rename repository utilities (1) (#6739) 2024-01-08 20:30:54 +01:00
Marc Bernard
ee5e592c56
Rename repository utilities (3) (#6741) 2024-01-08 20:26:19 +01:00
Marc Bernard
f4d95e5d0b
Check class/interface for version is part of repo (#6737)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-01-07 18:56:00 +01:00
Marc Bernard
c520825d95
Change all injector classes to FOR TESTING (#6738)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-01-07 18:04:19 +01:00
Marc Bernard
5a7c6e7b79
Avoid loss of log during background processing (#6736)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-01-07 15:57:12 +01:00
Marc Bernard
2222c883e1
Adjust test in zcl_abapgit_transport_objects (#6735) 2024-01-07 15:05:09 +01:00
Lars Hvam
edf92b5626
more TABL DDL serialization work (#6731)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2024-01-07 13:38:45 +01:00
Christian Günter
bf76fedf19
Do a syntax check before accessing version constant (#6733)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2024-01-07 12:42:02 +01:00
Josh Elliott
350d2eb7a7
Remove exception when deleting files (#6729)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2024-01-04 08:53:01 +01:00
ConjuringCoffee
d9eee6ef3e
Refresh repository to reduce memory usage in background mode (#6728) 2024-01-04 08:04:31 +01:00
Lars Hvam
60cf845079
ZCL_ABAPGIT_REPO, try prefixing the method (#6724) 2024-01-02 17:56:10 +01:00
Lars Hvam
3a7fc04b38
TABL DDL, basic serialization and deser (#6721) 2024-01-02 09:59:09 +01:00
Marc Bernard
e86d473140
Repo status: Replace input with repo interface (#6719)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-12-25 20:24:33 +01:00
Marc Bernard
543935a160
New feature: Original system (#6715)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-12-25 20:04:10 +01:00
Marc Bernard
314caccdd1
Reorg packages (4) (#6717) 2023-12-25 19:44:56 +01:00
Christian Günter
c29ab1928f
Fix abapGit popups external call (#6716) 2023-12-21 13:34:38 -05:00
Marc Bernard
2655c76996
Protect tadir selection (#6713)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-12-21 09:52:08 -05:00
Marc Bernard
30a752e0f8
Add object type to error message (#6714)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-12-21 09:48:28 -05:00
Christian Günter
fbd9e70fa5
Add unit tests for ZCL_ABAPGIT_GUI_PAGE_SETT_REMO->VALIDATE_FORM (#6712)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-12-20 14:50:06 -05:00
Marc Bernard
78aaf52046
FUGR: Fix check if include belong to function grp (#6711) 2023-12-20 14:27:34 -05:00
Marc Bernard
45edfa7b0a
Debug info: Show exits coded in exit super class (#6708) 2023-12-20 13:56:02 -05:00
Marc Bernard
1ddb7f0db7
CLAS: Avoid popups in lower releases (#6709) 2023-12-20 13:37:00 -05:00
Lars Hvam
1059db6cc9
flow page: add user exit (#6706) 2023-12-19 16:20:51 +01:00
Marc Bernard
20c1a3c610
Refactor serializer constructor (#6701) 2023-12-18 17:16:00 -05:00
Marc Bernard
563b175290
Reorg packages (3) (#6704)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-12-15 07:59:57 +01:00
Lars Hvam
4e831d10f3
new pull page: bugfix pull deletions (#6702) 2023-12-15 07:53:05 +01:00
Lars Hvam
3537279f37
TABL: xml read refactoring (#6703) 2023-12-14 15:45:39 -05:00
Marc Bernard
294da99e85
Reorg packages (2) (#6699)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-12-14 09:35:49 +01:00
Lars Hvam
dd7cb43c63
TABL refactoring, serializing XML (#6694) 2023-12-14 08:55:06 +01:00
Marc Bernard
8ed909428f
Reorg packages (1) (#6698) 2023-12-13 19:40:16 -05:00
gardian12
9526743562
added exception handling as hotfix of #6696 (#6697)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-12-13 12:30:08 +01:00
Marc Bernard
c2219e553f
Fix ABAP language version check (#6693)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-12-12 08:49:01 -05:00
Lars Hvam
94bad9ddcf
TSTC select, ABAP Cloud/Steampunk compatibility (#6695) 2023-12-12 06:27:19 +01:00
Lars Hvam
82337d0647
flow: show message if empty (#6692) 2023-12-12 05:18:33 +01:00
Lars Hvam
0a652c25a0
refactor zcl_abapgit_services_abapgit (#6690) 2023-12-11 17:27:51 +01:00
Lars Hvam
7c34dd33dc
remove use of type LXE_PCX_S1 by inlining type (#6687) 2023-12-08 15:30:45 +01:00
Lars Hvam
fa5fcfe00f
move ty_obj_attribute_tt to OO intf (#6688) 2023-12-07 10:01:00 +01:00
Marc Bernard
61cb8175d8
Check for ABAP language version during serialize (#6681) 2023-12-05 15:10:24 -05:00
Marc Bernard
8fc84426a7
TABU: Fix deserializing data config (#6684)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-12-01 11:37:21 -05:00
Marc Bernard
29c9018300
TABU: Fix staging in background process (#6683)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-12-01 11:20:02 -05:00
Marc Bernard
2ec48b7ddc
IOBJ: Fix uninstall (#6685)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-12-01 11:28:18 +01:00
Marc Bernard
7a86b71cd5
CLAS: Fix deserializing child exception classes (#6682) 2023-12-01 10:24:03 +01:00
Marc Bernard
931e4c1006
Add "Ignore" to tests for ABAP language version (#6680)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-30 09:08:44 -05:00
Marc Bernard
bb2423445e
Fix running multiple instances of abapGit (#6679)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-30 09:25:13 +01:00
Marc Bernard
d1e96e9952
Remember last used folder (#6677)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-30 09:07:13 +01:00
Marc Bernard
ada2314fae
Remove unused variable (#6678)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-30 08:50:31 +01:00
Lars Hvam
f6343068ef
remove some use of tihttpnvp (#6676) 2023-11-30 08:39:01 +01:00
Lars Hvam
9419a10e87
put zcl_abapgit_default_transport behind interface (#6673) 2023-11-30 07:48:55 +01:00
Marc Bernard
204dbcdbae
Add some stats for DB view (#6675) 2023-11-29 08:24:34 -05:00
Marc Bernard
64a9b36725
Fix lines between methods (#6674) 2023-11-29 07:13:38 +01:00
Lars Hvam
e14cba7d71
flow page, cleanup and remove feature flag (#6668) 2023-11-28 19:24:08 +01:00
Lars Hvam
a8b3bf9427
field rules: split to one unit test per test (#6672)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-11-28 19:19:27 +01:00
Lars Hvam
6528f87afb
debug page: open external links in new window (#6671)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-11-28 13:04:11 -05:00
Lars Hvam
dd92046e10
fix home and back again (#6670) 2023-11-28 13:01:30 -05:00
Marc Bernard
ef9f640fea
Downport: Fix 702 syntax errors (#6669) 2023-11-28 08:54:26 +01:00
Matthias Becker
380961a354
DDLX: Set "Changed At" and "Changed By" (#6661)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-11-27 09:09:05 -05:00
Lars Hvam
373b5bc5d7
bugfix, new pull page: setting transport (#6667) 2023-11-27 07:43:31 +01:00
Marc Bernard
890ad4bb1b
Add "Ignore" option for ABAP Language Version (#6663) 2023-11-26 20:53:35 -05:00
Marc Bernard
1d95ce5fd0
Support short/long timestamps in field rules (#6666) 2023-11-26 20:48:02 -05:00
Marc Bernard
302fd2cac0
Fix filename for export to ZIP (2) (#6665) 2023-11-24 15:13:05 -05:00
Marc Bernard
658df5fd4b
Fix filename for export to ZIP (#6664) 2023-11-24 15:05:06 -05:00
Christian Günter
ef170f5c32
disable superfluous check for offline repos (#6662) 2023-11-24 11:41:26 -05:00
Lars Hvam
55b44b1886
README.md: make slack invite more visible (#6659) 2023-11-24 08:48:28 -05:00
Lars Hvam
e9d8c1d985
packages: remove scompkdtln from public scope (#6656) 2023-11-24 07:02:53 +01:00
Lars Hvam
ba4cf57dcc
move method get_transport_layer to private (#6655) 2023-11-23 06:19:06 +01:00
Fabian Lupa
60f01499e5
Prevent calls to exit implementations in tests (#6653)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-11-22 07:33:51 +01:00
Marc Bernard
f2d49c2731
Repo List: Make labels clickable (#6651)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-17 10:46:23 -05:00
Marc Bernard
0e2b543752
Sort abaplint.json (#6650) 2023-11-17 07:47:02 +01:00
Lars Hvam
8ad8067d33
flow page: add basic pull page (#6644) 2023-11-16 17:03:48 +01:00
Marc Bernard
313c4442c7
1.126.0 (#6641)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-16 10:39:50 -05:00
Lars Hvam
5c99f34d25
apack performance fix (#6649) 2023-11-16 15:29:50 +01:00
Marc Bernard
380563d144
Rename private method in zcl_abapgit_objects (#6647) 2023-11-15 12:47:44 -05:00
Christian Günter
f9b25f279d
ZCL_ABAPGIT_SERIALIZE / DETERMINE_MAX_PROCESSES refactoring (#6646) 2023-11-15 08:48:10 -05:00
Marc Bernard
0cbbc5bbfd
Enhance repo labels (#6642)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-13 06:55:21 +01:00
Marc Bernard
e0f94a4818
Fix deletion/uninstall when using local settings (#6640)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-13 06:52:04 +01:00
Marc Bernard
dd63de8294
Consolidate offline and online repo view (#6638)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-12 15:24:40 +01:00
Lars Hvam
27743dbf34
flow page, bugfixes (#6627) 2023-11-12 08:36:31 +01:00
Marc Bernard
79bbd2ffe7
Fix APACK for namespaces (#6639) 2023-11-10 10:21:37 -05:00
Marc Bernard
60bfcdb6cb
Add "name" to repository settings (3) (#6637) 2023-11-10 10:08:04 -05:00
Marc Bernard
d243e9ac05
Add "name" to repository settings (2) (#6635) 2023-11-09 14:25:19 -05:00
Marc Bernard
fd6e4d8171
Clean-up select_add_order_by (#6636) 2023-11-09 08:37:31 -05:00
Marc Bernard
3920a3c1a9
Add "name" to repository settings (1) (#6634) 2023-11-08 11:01:03 -05:00
Marc Bernard
18fadaea7b
Add "name" to repository settings (prep) (#6633)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-08 09:49:37 -05:00
Marc Bernard
23e4b99595
Fix text field when switching to offline (#6632) 2023-11-08 09:32:44 -05:00
Marc Bernard
97fc834edf
Refactor http agent factory (#6631)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-08 08:21:38 -05:00
Marc Bernard
04609ae8cd
INTF: Fix file format feature switch (#6628)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-08 08:12:15 -05:00
Marc Bernard
5724603395
Add icons for issue, pr, action (#6630)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-08 07:12:41 +01:00
Lars Hvam
b3af744289
popups cleanup (#6629) 2023-11-07 16:30:13 -05:00
Marc Bernard
680d69377a
APACK: Allow overwriting missing dependencies (#6612)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-06 14:05:28 -05:00
Lars Hvam
22f76e264d
refactor popup_to_select_transports (#6624) 2023-11-06 11:33:14 -05:00
Lars Hvam
193051b0f6
repo: change logic for creation vs package creation 2 (#6626)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-11-06 10:51:21 -05:00
Lars Hvam
f46f5ce58e
startup gitea for integration testing (#6619)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-11-05 16:04:38 +01:00
Marc Bernard
d04b797d5a
Change order of popups on pull (#6613)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-05 08:57:15 -05:00
Marc Bernard
f8b4ec0026
SAP GUI for HTML: Fix dialog buttons (#6566)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-05 10:30:40 +01:00
Marc Bernard
20ec92d224
Sort pull request popup (#6623)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-04 09:58:26 +01:00
Marc Bernard
6d4fefa513
Fix typo in "orange" label (#6622)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-04 09:50:14 +01:00
Marc Bernard
ecc67d51cc
Fix dump restoring abapGit backup (#6621) 2023-11-03 15:19:48 -04:00
Lars Hvam
dd3b66981d
rm old unused Docker stuff (#6620) 2023-11-03 18:20:34 +01:00
Lars Hvam
5b9c8b1e32
flow page, bugfixes (#6608)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-11-03 18:15:57 +01:00
Marc Bernard
9f000ac9f1
Improve Backup (#6617)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-03 11:34:02 -04:00
Marc Bernard
98ea342593
SSFO: Fix order of T_CAPTION data (#6609)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-03 10:28:31 -04:00
Marc Bernard
241b95af91
Clean-up select_single_full_key (#6615)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-03 10:23:59 -04:00
Marc Bernard
4f04044fba
APACK: Manifest interface in sub-package (#6614)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-03 10:21:52 -04:00
Marc Bernard
ae1f4e3143
Clean-up select_add_order_by (#6616) 2023-11-03 08:51:42 -04:00
Marc Bernard
6b8b29cd46
Fix "Open in Main Language" if language is not installed (#6610)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-02 10:55:05 -04:00
Marc Bernard
b357a40172
Show object type in activation log (#6611) 2023-11-02 06:40:20 +01:00
Marc Bernard
53997e940a
FUGR: Fix import of template screens (#6582)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-01 09:13:50 -04:00
Marc Bernard
ec3ecb4a03
Refactor "Go Back" (#6605)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-01 08:42:27 -04:00
Lars Hvam
f442bb77d1
more logic for flow page (#6589) 2023-11-01 12:01:30 +01:00
Marc Bernard
1a525bf0ac
Add ABAP Language Version to New Online/Offline (#6603)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-11-01 06:25:00 +01:00
Marc Bernard
ea85a8d78f
Replace TR_TADIR_INTERFACE with tadir_delete (#6606) 2023-11-01 06:09:02 +01:00
Marc Bernard
5b88d4b6be
Replace TR_TADIR_INTERFACE with tadir_delete (#6604) 2023-10-31 14:46:35 -04:00
Katharina Wurz
bde3a9aa65
Improve documentation of ZCL_ABAPGIT_OBJECT_COMMON_AFF (#6601)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-10-31 14:19:14 -04:00
Marc Bernard
af9fa1e9c2
Clean-up zcl_abapgit_gui_chunk_lib (#6602) 2023-10-31 12:55:42 -04:00
Marc Bernard
95560c21a2
Refactor render_table_header/footer (#6600)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-31 10:48:04 -04:00
Marc Bernard
6078852678
Refactor Merge Pages (#6598)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-31 09:33:12 -04:00
Marc Bernard
d4156132be
Refactor feature check (is_feature_enabled) (#6599)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-31 09:29:00 -04:00
Lars Hvam
9cb286004d
zlib performance optimizations (#6597) 2023-10-31 06:31:39 +01:00
Marc Bernard
b3c35f3e7a
Refactor Staging Page (#6595)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-30 12:29:12 -04:00
Marc Bernard
283020bf92
Add version constant back to repo settings (#6596) 2023-10-30 11:57:21 -04:00
Lars Hvam
7814dc0663
fix syntax (#6593) 2023-10-30 15:07:30 +01:00
Lars Hvam
2e24bbe962
refactor repo list files local filter (#6590)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-10-30 14:58:01 +01:00
Marc Bernard
f99d0a7e14
Refactor Diff and Patch Pages (#6585)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-30 09:48:47 -04:00
Lars Hvam
e7371c8f09
PR ENUM: fix for private repos (#6592) 2023-10-30 14:31:35 +01:00
Lars Hvam
bb18b71f52
cts api, add new method + cleanup intf (#6591) 2023-10-30 06:31:37 +01:00
Marc Bernard
6471b3fe8d
Refactor Code Inspector and Syntax Check Pages (#6584)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-28 07:45:25 +02:00
Lars Hvam
8f7d7c30ec
flow page, the beginnings + some git v2 (#6579) 2023-10-28 06:55:08 +02:00
Lars Hvam
e1aa0e733f
html: add guard for max indentation (#6587)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-10-27 17:30:55 +02:00
Christian Günter
7bdd8f9f4c
Extract calls to FM FUNCTION_EXISTS (#6588) 2023-10-27 13:16:53 +02:00
Marc Bernard
bd0394ee20
TABL: Drop secondary indexes on pull (#6578)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-27 08:30:58 +02:00
Marc Bernard
307fe912f4
Add comments explaining "icon scaling" (#6583)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-27 08:22:49 +02:00
Marc Bernard
8966e440f1
Refactor: GUI buttons and menus (#6581) 2023-10-27 08:19:08 +02:00
Marc Bernard
b4cc162a2c
Clean-up slow_parameter_passing (#6577)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-26 16:40:32 +02:00
Marc Bernard
46d0d597ca
Clean-up double_spaces (3) (#6576) 2023-10-26 16:29:10 +02:00
Marc Bernard
a3291a1e40
Clean-up double_spaces (2) (#6575) 2023-10-26 09:42:51 -04:00
Marc Bernard
b09bc05b63
Clean-up double_spaces (#6573)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-26 06:41:17 +02:00
Marc Bernard
c750a82726
Pretty-print a couple files (#6572) 2023-10-26 06:35:01 +02:00
Lars Hvam
9f88628090
cts api: extract methods behind interface (#6571) 2023-10-25 14:12:35 -04:00
Marc Bernard
b107457017
Clean-up unused_variables (#6564)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-25 10:23:47 -04:00
Marc Bernard
dadc955352
PROG, FUGR: Fix handling of inactive code (#6557)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-25 16:12:13 +02:00
Marc Bernard
63845200b1
Pass repo metadata to adjust_display_filename exit (#6556)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-25 16:02:36 +02:00
Marc Bernard
c1873f6bbc
Clean-up unnecessary_pragma (#6565) 2023-10-25 09:07:18 -04:00
Marc Bernard
d840aceefa
Fix "lines between methods" (#6563) 2023-10-24 12:26:33 -04:00
Christian Günter
376b10e6f3
ZCL_ABAPGIT_SERIALIZE: Refactor Unit Tests (#6560)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-10-24 12:21:39 -04:00
Marc Bernard
077137af2c
Downport: Fix syntax error related to table ftgl_id (#6562) 2023-10-24 10:47:01 -04:00
Marc Bernard
c13108d73c
Repo View: Shorten URL display (#6555)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-24 10:26:44 -04:00
Christian Günter
05b8f90520
fix 'determine_max_processes' for disabled Parallel Processing and Merged abapGit (#6559) 2023-10-24 08:40:09 +02:00
Marc Bernard
cb08c70741
Implement changed_by for several objects (#6554)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-24 06:48:26 +02:00
Fabian Lupa
bfdb3e6c89
Add exit to adjust rfc server group for parallel serialization (#6503)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-10-23 17:37:25 -04:00
Albert Mink
bb43bc8663
Refac: use constants (#6553) 2023-10-20 16:41:52 -04:00
divzz95
587b52211a
SRVB: Clear metadata links (#6550) 2023-10-20 09:53:17 +02:00
Abo
35711c489a
Update zcl_abapgit_oo_base.clas.abap (#6552)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2023-10-19 18:32:35 +02:00
Lars Hvam
b82924c388
add flow icon (#6549) 2023-10-18 16:52:27 +02:00
einareiriksson
99bedb154c
TOBJ: Serialization shows diffs on an HANA database #6546 (#6547) 2023-10-17 05:23:06 +02:00
Lars Hvam
ad2d4649de
db edit+display page: add back button (#6545) 2023-10-16 17:47:33 -04:00
Lars Hvam
f417f8fa18
cleanup: select_add_order_by skip FAE + fix all omit_parameter_name (#6544) 2023-10-15 15:18:31 +02:00
Marc Bernard
aeb6b285d8
Refactor: Fix observations (#6542)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-14 10:36:09 +02:00
Marc Bernard
ebe3505edd
Improve unit test page (#6543) 2023-10-14 10:23:06 +02:00
Marc Bernard
10115a1da3
Refactor: Update HTML form exit method (#6541) 2023-10-13 16:55:59 -04:00
Marc Bernard
f52716b96b
Fix ignoring sub-packages when adding offline repo (#6538)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2023-10-13 10:04:06 -04:00
Christian Günter
bf117da81b
Fix syntax errors in latest abapGit (#6540) 2023-10-13 09:58:28 -04:00
Albert Mink
73950de6dd
[INTF/CLAS] Make deserialization more robust (#6537)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-10-13 15:32:18 +02:00
Marc Bernard
bea9757395
Change global exit class to singleton (#6539) 2023-10-13 08:12:00 +02:00
Lars Hvam
ab6ee1c0de
JavaGUI: remove trailing null workaround (#6536) 2023-10-12 09:06:44 -04:00
Lars Hvam
54f9426a9a
unit test page: add re-run button (#6533) 2023-10-11 15:10:55 +02:00
Marc Bernard
cbd3cb3311
Handle ABAP Language Version for source code objects (#6476)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-08 09:07:34 +02:00
Lars Hvam
a7b100c366
xml pretty: dont call close() (#6532) 2023-10-08 09:00:36 +02:00
Lars Hvam
97cdd3afa8
refactor concatenated_key_to_where() (#6531) 2023-10-08 08:50:15 +02:00
Marc Bernard
58da735823
CMPT: Fix missing transport entry on deletion (#6526)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-05 08:36:50 -04:00
Lars Hvam
f542b3433a
refactor XML pretty method (#6522) 2023-10-05 05:53:05 +02:00
Marc Bernard
caaa543b37
Refactor: Naming of class constants (#6529) 2023-10-04 09:20:07 -04:00
Lars Hvam
6a792ddc6a
fix syntax (#6528) 2023-10-03 17:41:49 +02:00
Marc Bernard
796d645a3a
Prepare serializing of ABAP Language Version (#6525)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-10-03 10:13:29 -04:00
Marc Bernard
2babd63e8b
CUS2: Add missing tadir and transport entries (#6527) 2023-10-03 09:49:26 -04:00
Marc Bernard
58d2ebfc65
Diff: Fix refresh of single file (#6524) 2023-10-02 12:06:32 -04:00
Lars Hvam
923849d8d3
abaplint: enable target rules (#6492) 2023-10-02 17:20:02 +02:00
Lars Hvam
0ab304420b
refactor user record class (#6520) 2023-09-30 19:15:42 +02:00
Lars Hvam
90d1e1a02f
add back button to db page (#6521) 2023-09-30 16:32:06 +02:00
Marc Bernard
7f37415f03
IAMU v2: Serialize MIMEs as separate file + fixes (#6515)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-09-30 10:24:38 -04:00
Marc Bernard
066812ef84
SFxx: Fix missing lock checks and unlocking (#6519)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-09-30 14:55:33 +02:00
Marc Bernard
f1832259fb
W3xx: Refactor get_metadata (#6518)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-09-30 09:05:34 +02:00
Marc Bernard
8420663819
Refactor: Simplify lock check for workbench objects (#6517)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-09-30 08:28:17 +02:00
Lars Hvam
03033a2e89
zcl_abapgit_html_action_utils refactoring for ABAP Cloud (#6514) 2023-09-30 08:21:55 +02:00
Marc Bernard
d65183bd6a
Fix unit tests in zcl_abapgit_abap_language_vers (#6516) 2023-09-30 08:04:19 +02:00
Lars Hvam
cc4ac1142d
namespace class: ABAP Cloud compatibility (#6513) 2023-09-29 18:29:52 +02:00
Marc Bernard
02dfc77129
Enhance ABAP Language Version class (#6484)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-09-29 16:29:12 +02:00
ConjuringCoffee
6f157c590f
Encapsulate locks for background mode (#6512) 2023-09-27 11:00:44 -04:00
Marc Bernard
48fd0934a7
Diff View: Collapse/expand all diffs (#6511) 2023-09-26 10:48:52 -04:00
Marc Bernard
31cf38aab6
Refactor split_by_name call (#6510) 2023-09-26 09:17:08 -04:00
Christian Günter
500ed4e7b0
Fix link hints for radio buttons with edge control (#6509)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-09-25 13:20:39 -04:00
Christian Günter
60d3320397
Fix command palette default form action with edge (#6508) 2023-09-25 13:16:55 -04:00
Marc Bernard
2645e2208b
Fine-tune popups to confirm uninstall (#6504)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-09-21 17:32:22 +02:00
Marc Bernard
1ca062d229
Add ABAP Language Version to Repo Settings (experimental) (#6488)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-09-21 17:09:50 +02:00
Juraj Adásek
e3cdb6a610
Do not assign T packages to a transport request (#6506)
Co-authored-by: Juraj Adasek <juraj.adasek@sap.com>
2023-09-21 17:01:27 +02:00
Marc Bernard
82633f80f7
Add option to remove all objects but keep repository (#6499) 2023-09-19 11:03:09 -04:00
Fabian Lupa
a13798408d
Move up ON_EVENT exit call (#6498)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-09-18 11:37:16 -04:00
Marc Bernard
2acd363630
Fix dump in when using namespaced package for repo (#6500) 2023-09-17 14:06:22 -04:00
Fabian Lupa
9f0fde201a
CMPT Remove redundant and admin fields from XML (#6502) 2023-09-17 12:44:34 -04:00
Marc Bernard
f42482843e
ECTD: Fix diff after import based on sort order (#6494) 2023-09-15 08:51:20 -04:00
Fabian Lupa
b1daa71226
Remove test data container variants on pull that do not exist on the remote (#6493)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: Marc Bernard <marc@marcbernardtools.com>
2023-09-14 12:30:20 -04:00
Marc Bernard
13043b4d34
Prepare FUGR for ABAP Language Version (#6487) 2023-09-14 09:17:08 -04:00
Marc Bernard
c3b6b73736
Add ABAP Language Version to parallel serialize (#6486) 2023-09-13 10:12:48 -04:00
Marc Bernard
89ca3014f7
Update auth-check in zcl_abapgit_sap_report (#6485) 2023-09-13 10:08:45 -04:00
Kjetil Kilhavn
7ad9351dc7
Escape display name for javascript repo catalog (#6482) 2023-09-11 19:53:11 -04:00
Lars Hvam
61d6b9ec70
update npm dependencies (#6473) 2023-09-11 14:24:01 +02:00
Frank Müller
3f41328ab6
Consider filter at zcl_abapgit_repo_status=>calculate (#6480)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-09-09 17:34:32 +02:00
Marc Bernard
a029fa25be
Repo view: Fix display of original system (#6478) 2023-09-09 17:17:46 +02:00
Marc Bernard
1cbca5925f
Downport: Unit tests for zcl_abapgit_objects (#6475) 2023-09-07 12:40:09 -04:00
Marc Bernard
d5b11d15ab
Move check_for_restart from zcl_abapgit_repo (#6470)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-09-07 08:51:29 -04:00
Marc Bernard
e92a41c132
1.125.0 (#6472) 2023-09-06 10:28:47 -04:00
Marc Bernard
152ae1d59c
Consolidate READ/UPDATE_PROGDIR calls (#6464) 2023-09-06 09:28:42 -04:00
Marc Bernard
4ca6c4a4ec
Fix dump in ZCL_ABAPGIT_GIT_PACK=>DECODE (#6468) 2023-09-05 09:54:33 -04:00
Christian Günter
c2254f9f8f
CLAS/INTF: Fix type (#6469) 2023-09-04 15:26:13 -04:00
Albert Mink
533c595375
CLAS/INTF: Fix seocompotx during deserialization (#6457)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2023-09-04 14:27:07 -04:00
Frank Müller
4e3a139b27
#6428 optimize add namespace (#6466)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-09-04 12:38:29 +02:00
Lars Hvam
8b8ad85bbb
data: use hashed tables (#6456) 2023-09-04 07:06:32 +02:00
github-actions[bot]
27f1451a63
ajson, Automatic Update (#6465)
Co-authored-by: larshp <larshp@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-09-04 07:01:03 +02:00
Marc Bernard
f1372eb631
Fix update of checksums on pull (#6395)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-09-04 06:48:38 +02:00
Frank Müller
26883663b3
Apply filter after TADIR selection (#6462)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-09-01 15:03:28 -04:00
Frank Müller
bc00e4d911
Optimize add namespace (#6461)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-09-01 14:23:41 -04:00
Marc Bernard
8e3a64dd68
Remove unused constant for ABAP Language Version (#6455) 2023-09-01 14:02:21 -04:00
Albert Mink
5aadd5c137
Replace strings by constants, abap language version (#6460) 2023-09-01 15:30:28 +02:00
Frank Müller
b9a8de1ad2
Replace zcl_abapgit_objects=>ty_serialization with same type in interface (#6451)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-09-01 06:47:37 +02:00
Lars Hvam
7ae6ac291a
disable timer tests on open-abap (#6452) 2023-08-31 13:57:19 +02:00
Marc Bernard
19232500f9
Add online/offline filter option for repo list (#6449)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-31 13:48:19 +02:00
Frank Müller
e9ef44ce42
#6416 check objects locked (#6450) 2023-08-31 09:42:49 +02:00
Lars Hvam
fecaacff9d
flaky timer unit test: output result on fail (#6434) 2023-08-31 08:48:29 +02:00
Frank Müller
03d4e51277
Unit Test List Subpackages (#6445)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-30 19:19:14 +02:00
Marc Bernard
425a12e2b7
Fix typo in repo settings (#6448)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-30 18:24:31 +02:00
Marc Bernard
d51b12c445
Clarify error messages about folder logic (#6447) 2023-08-30 18:14:01 +02:00
Marc Bernard
1b3114d794
Remove unnecessary namespace check (#6446)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-30 17:08:10 +02:00
Frank Müller
b80995467b
Replace RS_NAME_SPLIT_NAMESPACE in TADIR class (#6443)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-08-30 17:01:18 +02:00
Marc Bernard
722be0c503
Remove status from zcl_abapgit_repo (#6440)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-30 16:54:25 +02:00
Marc Bernard
8022eafdab
generic object handler: fix special cases (#6444) 2023-08-29 16:29:53 -04:00
Lars Hvam
0f97e83652
cleanup injection at teardown (#6441) 2023-08-29 12:27:37 +02:00
Marc Bernard
810943eeaf
APACK: Remove unnecessary statement (#6438)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-29 07:52:44 +02:00
Marc Bernard
609abed8fb
Downport: Fix syntax errors in unit tests (#6437)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-29 07:46:40 +02:00
Marc Bernard
49399ba584
DSYS: Update spacing between methods (#6439) 2023-08-28 18:54:30 -04:00
Frank Müller
c4cf63ebe0
DSYS: Fix error for objects containing / in name (#6431)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-08-28 17:56:16 -04:00
Christian Günter
c9edbe1d48
Fix Syntax Check warnings regarding secondary keys (#6435) 2023-08-28 15:34:54 -04:00
Albert Mink
dc210d9efb
Fix runtime error in zcl_abapgit_abap_language_vers (#6427)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-28 16:51:40 +02:00
Marc Bernard
b1582db9b4
Improve performance of push for large repos (#6390)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-28 16:48:40 +02:00
ConjuringCoffee
095a04834a
Improve confusing progress message (seemingly always 200 objects) (#6432)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-08-28 06:52:52 +02:00
Lars Hvam
65146ff970
cleanup tadir injections in unit test teardown (#6385) 2023-08-25 07:17:56 +02:00
Lars Hvam
55fb0d07a4
more ui core decoupling (#6374)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-08-25 07:14:03 +02:00
Marc Bernard
274f802e8b
Rename zcl_abapgit_file_status (#6413)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-23 08:08:30 +02:00
Lars Hvam
89f715ed5f
generic object handler: fix unit test (#6399)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-08-23 07:51:08 +02:00
Frank Müller
9a4c9bb37d
Clear in deserialization method at the wrong pos (#6420)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-23 07:22:26 +02:00
Marc Bernard
43db85ea38
Move check_and_create_package to repo services (#6410)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-22 06:41:41 +02:00
Lars Hvam
c267d2ac20
convert, fix dump (#6415) 2023-08-17 08:17:53 +02:00
Lars Hvam
9284a7342e
upport zcl_abapgit_convert (#6406) 2023-08-16 17:24:28 +02:00
Marc Bernard
83e43dfc04
IWOM/IWPR/TRAN: Implement changed_by (#6411) 2023-08-16 09:01:16 -04:00
github-actions[bot]
1a5e0813c5
ajson, Automatic Update (#6405)
Co-authored-by: larshp <larshp@users.noreply.github.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-08-15 17:14:34 +02:00
Marc Bernard
2d3e9fffd1
Move open_ie_devtools to front-end services (#6408) 2023-08-15 10:04:01 -04:00
Lars Hvam
a0c37350a9
use zcl_abapgit_convert for language code conversion (#6382)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-08-13 13:51:10 -04:00
Marc Bernard
80287bb9ee
SOD1/2: Check for support and add changed_by (#6404) 2023-08-12 12:22:17 -04:00
Lars Hvam
dd479c4efb
APIS - API Release State (#6403) 2023-08-12 12:20:20 -04:00
Lars Hvam
7895718360
DRUL: fix changed_by() (#6402)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-08-11 14:13:59 -04:00
Christian Günter
5524b28fc0
Fix edge control (#6401)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-08-11 14:09:40 -04:00
Marc Bernard
0bf48f2b03
Fix unit test page if there are no unit tests (#6397) 2023-08-11 13:23:03 -04:00
Marc Bernard
ad6a5b98f1
Refactor Data Config Page (#6396)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-11 13:19:53 -04:00
Lars Hvam
b9a9731df2
SKTD - Knowledge Transfer Document (#6400)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-08-11 13:17:44 -04:00
Marc Bernard
690ac839b7
TABU: Fix deserializing data (#6394)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-11 13:15:40 -04:00
Marc Bernard
16f0269544
Fix unit test in zcl_abapgit_objects (#6398)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-11 09:27:39 +02:00
Marc Bernard
35f5146fb9
Enhance experimental features (#6393)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-11 08:39:51 +02:00
ConjuringCoffee
815bdb37b4
Fix potential crash in background mode (#6392) 2023-08-10 16:31:25 -04:00
Marc Bernard
5912973390
Clarify minimum version (#6391)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-10 09:56:44 -04:00
Albert Mink
90bcac39e8
Do the ABAP Language Version for the AFF objects (#6375)
Co-authored-by: Michael Schneider <micha.schneider@sap.com>
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2023-08-10 06:11:20 +02:00
Marius Raht
9d2bb4da0b
TABU: Update entries with same key but different component values (#6380)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-08-02 06:35:20 +02:00
Alexander Tsybulsky
34e40c1d9d
Fix description handling (#6384) 2023-08-01 07:16:53 +02:00
Lars Hvam
79a0183b7c
data utils: add unit test (#6383) 2023-07-30 14:51:24 +02:00
Lars Hvam
979cdfec0e
update npm dependencies (#6376) 2023-07-30 13:38:57 +02:00
Lars Hvam
efa8f775ee
ALV: steampunk syntax compatibility (#6381) 2023-07-30 07:52:24 +02:00
Lars Hvam
05c12aacc9
remove use of seok_pgmid_r3tr & refactor class constructor (#6347) 2023-07-28 06:03:51 +02:00
Lars Hvam
518e7ca576
refactor ZCL_ABAPGIT_HTML_POPUPS (#6368) 2023-07-27 08:12:47 +02:00
Lars Hvam
8b568e6e45
action utils: 2 methods to private, rm get_fields() (#6370) 2023-07-27 08:00:33 +02:00
Lars Hvam
7011e87d8c
move more git definitions (#6369) 2023-07-27 06:09:37 +02:00
Lars Hvam
ba76a8eaa8
refactor use of IF_SATC_CI_VARIANT_ACCESS (#6373) 2023-07-26 11:42:52 +02:00
Lars Hvam
abbfdfd68f
check variant popup refactoring (#6350)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-07-26 08:10:59 +02:00
Marc Bernard
402748d966
Handling unsupported objects in deserialize process (#6320)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-07-24 15:57:32 -04:00
Lars Hvam
a297f1e5cb
router: refactor get_page_stage() (#6362) 2023-07-23 15:57:22 +02:00
Lars Hvam
1d8af69ae3
move more git definitions (#6365) 2023-07-23 15:33:52 +02:00
Lars Hvam
a8bce57373
move get_jumper() to new objects factory (#6363) 2023-07-23 15:07:06 +02:00
ThomasPloski
e177147f10
Introduce ABAP Language Version base functionality (#6346)
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-07-23 15:03:46 +02:00
Lars Hvam
83b554f75e
refactor call to TEXT_SPLIT (#6366) 2023-07-23 11:10:18 +02:00
Lars Hvam
6369c57c56
decouple emergency mode from ui core (#6364) 2023-07-22 15:45:12 +02:00
Marc Bernard
af1a58d2e6
Enhance jump to object (#6360) 2023-07-22 11:08:25 +02:00
Marc Bernard
5fabbea024
SOD1/SOD2 downport 702 + fix endless loop (#6359) 2023-07-21 10:46:11 -04:00
Christian Günter
9075658c3f
SOD1/SOD2 downport (#6356) 2023-07-20 16:24:00 +02:00
Igor Nekhoda
050804052f
SOD1/2: Add support for API Package & API Package Assignment (#6352) 2023-07-20 09:29:14 -04:00
Lars Hvam
8d839aee23
cleanup, delete unused popup choose_pr_popup() (#6349)
Co-authored-by: Christian Günter <christianguenter@googlemail.com>
2023-07-17 10:13:32 +02:00
Christian Günter
ac854ff684
delete unused variable (#6351) 2023-07-17 10:07:44 +02:00
Alexander Tsybulsky
b50be07041
Separate translations from XML, PO files (#6189) 2023-07-17 10:50:52 +03:00
Christian Günter
0fa7ba96b2
Fix hotkeys for edge browser control (#6344)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-07-16 10:26:50 +02:00
rdibbern
426edc3721
Enable object handler for Event Consumption Model (EEEC) (#6348)
Co-authored-by: Dr. Jonas Braun <jonas.braun01@sap.com>
Co-authored-by: Raphael Dibbern <raphael.dibbern@sap.com>
Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
2023-07-14 13:29:46 -04:00
github-actions[bot]
b10276ffa5
ajson, Automatic Update (#6341)
Co-authored-by: larshp <larshp@users.noreply.github.com>
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-07-11 09:09:50 +02:00
Lars Hvam
98fed3b641
update npm dependencies (#6333) 2023-07-11 07:57:52 +02:00
Christian Günter
c9b27b9aeb
Don't render browser control warning for SAP GUI 8.00 SP >= 03 / 7.70 SP >=13 (#6340)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-07-10 13:02:12 -04:00
Christian Günter
2a9a35e925
Fix Code Inspector jump (#6343)
thanks for the fix. this way of encoding the action should probably be refactored.
2023-07-10 10:47:08 -04:00
Marius Raht
f598c7b6cf
Fix processing of TABU entries in case of multiple tables (#6338) 2023-07-09 11:01:55 -04:00
Marc Bernard
09b14c4f5d
Fix GUI actions for Edge browser control (#6336) 2023-07-08 08:02:51 +02:00
Lars Hvam
d17a5989aa
replace seoclskey with abap_classname (#6305) 2023-07-08 07:58:41 +02:00
Alexander Tsybulsky
7ffec540be
Fix dialog exit (#6326)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-07-04 08:14:06 -04:00
Marc Bernard
d5cf6febf3
Fix syntax error in zcl_abapgit_file_deserialize (#6328)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-06-28 18:26:22 +02:00
Marc Bernard
1eafca9d6b
Fix syntax error insert report ... version (#6327) 2023-06-28 15:12:14 +02:00
Lars Hvam
d76aa2b086
bugfix, dump GETWA_NOT_ASSIGNED (#6325) 2023-06-28 13:19:47 +02:00
Lars Hvam
cddf583806
OO serializer: skip includes not found (#6324) 2023-06-27 10:55:06 +02:00
Marius Raht
4f2935bf35
[FIX] zcl_abapgit_gui_page_data: On back go back (#6322)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-06-26 15:38:10 +02:00
thorsten-wolf-neptune
af7adb3828
added auto confirmation of transport messages (#6317)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-06-26 15:26:53 +02:00
Marc Bernard
c8a4a54a3e
Consolidate READ/INSERT/DELETE REPORT statements (#6299)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-06-24 13:20:24 +02:00
Lars Hvam
33e0ae2437
npm updates (#6304) 2023-06-23 08:40:05 +02:00
oblomov
55c843df79
fixed links to new documentation (#6319) 2023-06-23 08:27:43 +02:00
Christian Günter
b0c213b823
fix syntax warnings regarding secondary key (#6313) 2023-06-16 09:10:40 +02:00
Christian Günter
82df25547c
Item graph - performance improvement (#6312) 2023-06-15 11:03:53 +02:00
Lars Hvam
393b1aad8c
unit test page: dont show SAUNIT_NO_TEST_CLASS err (#6310) 2023-06-09 09:13:18 +02:00
Marc Bernard
6a3884a0a9
Fix is_dirty check for Repo Settings (#6309) 2023-06-02 12:56:44 +02:00
Lars Hvam
e6fcfd97af
unit test page result: show syntax errors (#6308)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-06-02 06:43:32 +02:00
Alexander Tsybulsky
e2b2f1712d
Refactoring in settings-remote (WIP) (#6300)
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-06-01 17:39:41 +02:00
Marc Bernard
27454dccfb
IDOC, TABL: Set released and closed status (#6306) 2023-06-01 09:57:09 +02:00
Marc Bernard
15e755d5c5
Pull dialog safeguard (#6303) 2023-05-28 14:08:59 +02:00
Lars Hvam
36e2d44917
dont dump for unknown frontend (#6302) 2023-05-27 08:50:32 +02:00
Marc Bernard
9d4f2b4675
Repo view: Show icon for different original language (#6297) 2023-05-26 09:33:53 +02:00
Lars Hvam
9c38d5f07d
npm updates (#6290) 2023-05-25 06:49:54 +02:00
Alexander Tsybulsky
3d051bd881
Move base page and HOC to lib package (#6301) 2023-05-23 20:14:30 +02:00
Marc Bernard
84e5883cd8
Consolidate GUI actions (#6296) 2023-05-23 18:03:31 +02:00
Marc Bernard
b77d419077
Persist repository list settings (#6295) 2023-05-22 09:52:00 +02:00
Marc Bernard
62d5d4659e
Include deletions in "Transport to Branch" (#6291)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-05-22 09:36:53 +02:00
Alexander Tsybulsky
a660f0114e
Modals unification, in-page, own page, better abstraction, on example of settings_remote page (#6277)
Co-authored-by: Marc Bernard <marc@marcbernardtools.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
Co-authored-by: lars <larshp@hotmail.com>
2023-05-21 14:44:04 +02:00
Marc Bernard
01b4af32fb
Reorg packages (#6285)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
2023-05-16 10:21:01 +02:00
834 changed files with 46827 additions and 14189 deletions

View File

@ -1,6 +1,10 @@
{
"name": "abapGit",
"image": "mcr.microsoft.com/vscode/devcontainers/javascript-node:0-12",
"extensions": ["larshp.vscode-abaplint"],
"image": "mcr.microsoft.com/vscode/devcontainers/javascript-node:0-20",
"customizations": {
"vscode": {
"extensions": ["larshp.vscode-abaplint"]
}
},
"postCreateCommand": "npm install"
}
}

View File

@ -12,6 +12,10 @@ trim_trailing_whitespace = true
indent_style = space
indent_size = 1
# XSLT source code must have CR LF to be deserialized correctly by SAP code
[*.xslt.source.xml]
end_of_line = crlf
# match the format used by abapGit
[*.{abap,js,json,html,css}]
charset = utf-8

View File

@ -1,14 +0,0 @@
---
parserOptions:
ecmaVersion: 5
env:
browser: true
extends:
- eslint:recommended
rules:
quotes: ['error', 'double', { 'avoidEscape': true }]
semi: ['error', 'always', { 'omitLastInOneLineBlock': true}]
no-console: off
indent: ['error', 2]
no-trailing-spaces: ['error']
no-unused-vars: ['warn']

View File

@ -19,11 +19,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: '20'
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- name: run
run: |
git clone https://github.com/abapGit/ajson_mirror.git

View File

@ -9,11 +9,8 @@ jobs:
build-merged:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: '16'
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- name: Run npm steps
run: |
npm install
@ -44,12 +41,10 @@ jobs:
outputs:
pushedTag: ${{ steps.deploy-release-tag.outputs.pushedTag }}
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 2
- uses: actions/setup-node@v3
with:
node-version: '16'
- uses: actions/setup-node@v4
- name: deploy-release-tag
id: deploy-release-tag
if: github.ref == 'refs/heads/main' && github.repository == 'abapGit/abapGit'
@ -64,12 +59,12 @@ jobs:
needs: [build-merged, auto-tag]
if: github.ref == 'refs/heads/main' && github.repository == 'abapGit/abapGit' && !!needs.auto-tag.outputs.pushedTag
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
repository: abapGit/build
path: build
ssh-key: ${{ secrets.DEPLOY_ABAPGIT_BUILD }}
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
path: abapGit
- name: mirror tag to the artifact
@ -84,10 +79,8 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: '16'
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- name: npm run unit
run: |
npm install

View File

@ -6,6 +6,6 @@ jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: REUSE Compliance Check
uses: fsfe/reuse-action@v1
uses: fsfe/reuse-action@v5

View File

@ -11,12 +11,9 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: '20'
- name: npm install
run: |
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- run: |
npm install
npm run eslint
npm run merge
@ -32,15 +29,21 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: '20'
- name: npm install
run: npm install
- name: npm run unit
run: npm run unit
- name: npm run coverage
run: npm run coverage
- name: npm run integration
run: npm run integration
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- run: npm install
- run: npm run unit
- run: npm run coverage
integration:
runs-on: ubuntu-latest
needs: unit-tests
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- run: npm install
- name: start gitea
working-directory: test/gitea/
run: npm install && npm run gitea
- run: npm run integration

9
.gitignore vendored
View File

@ -6,4 +6,11 @@ lint_deps
output
ci/*.abap
allure-report
coverage
coverage
Heap.*
list.txt
/test-results/
/playwright-report/
/blob-report/
/playwright/.cache/
.DS_Store

View File

@ -1,6 +1,6 @@
## General advice
* If you're new and want to help out, try one of [these](https://github.com/larshp/abapGit/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22). They should not be complicated to implement but require you to get the project up and running. Or pick something that annoys you. Fix a typo. Improve an error message. Correct some [coding conventions](https://docs.abapgit.org/development/guidelines.html). Or try something unusual just to see if it works and if it doesn't, open an issue.
* If you're new and want to help out, try one of [these](https://github.com/larshp/abapGit/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22). They should not be complicated to implement but require you to get the project up and running. Or pick something that annoys you. Fix a typo. Improve an error message. Correct some [coding conventions](https://docs.abapgit.org/development-guide/). Or try something unusual just to see if it works and if it doesn't, open an issue.
* Before starting any significant development, open an issue and propose your solution first. A discussion can save a lot of unnecessary work. It also helps others know that this is being worked on.
@ -26,8 +26,8 @@ A good bug report should not leave others needing to chase you up for more infor
## Development Guidelines
http://docs.abapgit.org/development/guidelines.html
https://docs.abapgit.org/development-guide/
## Building/Creating a PR
http://docs.abapgit.org/development/contributing.html
https://docs.abapgit.org/development-guide/read-first/contributing.html

View File

@ -3,8 +3,7 @@
[![License](https://img.shields.io/github/license/abapGit/abapGit?label=License&color=green)](LICENSE)
[![REUSE Status](https://api.reuse.software/badge/github.com/abapGit/abapGit?color=success)](https://api.reuse.software/info/github.com/abapGit/abapGit)
[![Slack](https://img.shields.io/badge/Join-Slack-blue)](https://communityinviter.com/apps/abapgit/abap)
[![abap package version](https://img.shields.io/endpoint?url=https://shield.abap.space/version-shield-json/github/abapGit/abapGit/src/zif_abapgit_version.intf.abap/c_abap_version&label=version)](https://github.com/abapGit/abapGit/blob/main/src/zif_abapgit_version.intf.abap)
[![abap package version](https://img.shields.io/endpoint?url=https://shield.abappm.com/github/abapGit/abapGit/-main/src/zif_abapgit_version.intf.abap/c_abap_version&label=version)](https://github.com/abapGit/abapGit/blob/main/src/zif_abapgit_version.intf.abap)
<!--
<picture>
@ -30,7 +29,7 @@ Works with: [GitHub](https://github.com/),
[Azure DevOps](https://azure.microsoft.com/en-us/services/devops) and
[more](https://git.wiki.kernel.org/index.php/GitHosting).
ABAP Version: 702 or higher
ABAP Version: 702 SP 8 or higher
Latest build: [zabapgit_standalone.prog.abap](https://raw.githubusercontent.com/abapGit/build/main/zabapgit_standalone.prog.abap)
@ -49,6 +48,8 @@ It is recommended to use SAP GUI for Windows, since there are known issues relat
https://docs.abapgit.org
[Join Slack channel](https://communityinviter.com/apps/abapgit/abap)
## Contributing
You can find the contribution guidelines [here](CONTRIBUTING.md).
@ -67,4 +68,5 @@ For questions/comments/bugs/feature requests/wishes please create an [issue](htt
- Icons used in abapGit are created from [Font Awesome](https://fontawesome.com/) free icon set ([CC-BY-4.0](LICENSES/CC-BY-4.0.txt))
- [AJSON](https://github.com/sbcgua/ajson) and [String-Map](https://github.com/sbcgua/abap-string-map) are developed by Alexander Tsybulsky ([MIT](LICENSES/MIT.txt))
- [AFF](https://github.com/SAP/abap-file-formats) formats are by SAP ([MIT](LICENSES/MIT.txt))

3
SECURITY.md Normal file
View File

@ -0,0 +1,3 @@
# Reporting Security Issues
To report a security issue, please use the GitHub Security Advisory ["Report a Vulnerability"](https://github.com/abapGit/abapGit/security/advisories/new) tab.

View File

@ -1,35 +1,35 @@
{
"global": {
"files": "/{test,src}/**/*.*",
"files": "/{test/src,src}/**/*.*",
"skipGeneratedFunctionGroups": true,
"skipGeneratedGatewayClasses": true,
"skipGeneratedPersistentClasses": true,
"skipGeneratedFunctionGroups": true
"skipGeneratedPersistentClasses": true
},
"dependencies": [
{
"folder": "/deps",
"files": "/**/*.*"
"files": "/**/*.*",
"folder": "/deps"
},
{
"url": "https://github.com/abaplint/deps",
"folder": "/lint_deps",
"files": "/src/**/*.*"
"files": "/src/**/*.*",
"folder": "/lint_deps"
}
],
"syntax": {
"version": "v702",
"errorNamespace": "^(Z|Y|LT?CL_|TY_|LIF_|.*ABAPGIT)",
"errorNamespace": "^(Z|Y|LT?CL_|TY_|LIF_|C_|.*ABAPGIT)",
"globalConstants": [
"abap_func_exporting",
"abap_func_tables",
"cssf_formtype_text",
"seok_access_free",
"seok_access_modify",
"seok_pgmid_r3tr",
"sews_c_vif_version",
"skwfc_obtype_folder",
"skwfc_obtype_loio",
"so2_controller",
"srext_ext_class_pool",
"srext_ext_interface_pool",
"ststc_c_type_dialog",
"ststc_c_type_object",
"ststc_c_type_parameters",
@ -46,102 +46,153 @@
"wdyn_limu_component_definition",
"wdyn_limu_component_view"
],
"globalMacros": []
"version": "v702"
},
"rules": {
"select_single_full_key": false,
"strict_sql": false,
"cds_comment_style": true,
"change_if_to_case": false,
"expand_macros": true,
"unnecessary_return": false,
"fully_type_itabs": false,
"cds_legacy_view": true,
"superfluous_value": true,
"classic_exceptions_overlap": true,
"local_testclass_consistency": true,
"no_external_form_calls": false,
"no_inline_in_optional_branches": true,
"pragma_style": true,
"slow_parameter_passing": false,
"unnecessary_pragma": false,
"7bit_ascii": {
"exclude": [
"zcl_abapgit_git_commit.clas.testclasses.abap",
"zcl_abapgit_gui_event.clas.testclasses.abap",
"zcl_abapgit_html_action_utils.clas.testclasses.abap"
]
},
"abapdoc": false,
"align_type_expressions": true,
"align_pseudo_comments": false,
"invalid_table_index": true,
"tables_declared_locally": true,
"unused_macros": true,
"align_parameters": false,
"allowed_object_naming": true,
"allowed_object_types": {
"exclude": ["test/src/"],
"allowed": [
"CLAS",
"DEVC",
"FUGR",
"INTF",
"PROG",
"TRAN",
"W3MI"
]
},
"ambiguous_statement": true,
"avoid_use": {
"break": true,
"defaultKey": false,
"define": true,
"describeLines": true,
"exportToDatabase": true,
"exportToMemory": false,
"statics": true,
"testSeams": true
},
"begin_end_names": true,
"begin_single_include": true,
"call_transaction_authority_check": true,
"cds_comment_style": true,
"cds_legacy_view": true,
"cds_parser_error": true,
"constant_classes": true,
"no_aliases": {
"chain_mainly_declarations": {
"check": true,
"clear": true,
"definitions": true,
"free": true,
"hide": true,
"include": true,
"move": true,
"refresh": true,
"sort": true,
"unassign": true,
"write": true
},
"change_if_to_case": false,
"check_abstract": true,
"check_comments": false,
"check_ddic": true,
"check_include": true,
"check_subrc": false,
"check_syntax": true,
"check_text_elements": true,
"check_transformation_exists": true,
"class_attribute_names": {
"constants": "^C_.*$",
"exclude": [
"/json/",
"zcl_abapgit_repo.clas.abap",
"zcl_abapgit_repo_online.clas.abap"
]
"zif_abapgit_objects"
],
"ignoreExceptions": true,
"ignoreInterfaces": false,
"ignoreLocal": false,
"instance": "^M._.*$",
"statics": "^G._.*$"
},
"nrob_consistency": true,
"omit_preceding_zeros": true,
"prefer_corresponding": true,
"static_call_via_instance": false,
"unnecessary_chaining": false,
"unsecure_fae": false,
"identical_descriptions": false,
"modify_only_own_db_tables": false,
"no_yoda_conditions": false,
"no_chained_assignment": true,
"select_add_order_by": false,
"dangerous_statement": false,
"db_operation_in_loop": false,
"select_performance": false,
"max_one_method_parameter_per_line": true,
"unused_ddic": true,
"prefer_raise_exception_new": true,
"use_class_based_exceptions": true,
"uncaught_exception": true,
"intf_referencing_clas": false,
"method_implemented_twice": true,
"parser_702_chaining": true,
"sy_modification": {
"classic_exceptions_overlap": true,
"cloud_types": true,
"colon_missing_space": true,
"commented_code": {
"allowIncludeInFugr": false,
"exclude": [
"zcl_abapgit_objects_program.clas.abap"
"intf",
"otgr"
]
},
"call_transaction_authority_check": true,
"function_module_recommendations": false,
"method_overwrites_builtin": {
"exclude": [
"zcl_abapgit_stage.clas.abap",
"zif_abapgit_log.intf.abap"
]
},
"omit_parameter_name": false,
"omit_receiving": true,
"unused_methods": true,
"identical_contents": false,
"many_parentheses": true,
"prefer_xsdbool": true,
"prefer_is_not": false,
"use_bool_expression": true,
"check_subrc": false,
"constant_classes": true,
"constructor_visibility_public": true,
"contains_tab": true,
"cyclic_oo": false,
"cyclomatic_complexity": {
"max": 25
},
"identical_conditions": true,
"use_line_exists": true,
"line_break_style": true,
"dangerous_statement": false,
"db_operation_in_loop": false,
"definitions_top": {
"exclude": [
"/json/"
]
},
"description_empty": {
"exclude": [
"/test/"
]
},
"double_space": true,
"downport": false,
"add_test_attributes": true,
"implicit_start_of_selection": true,
"empty_event": true,
"dynpro_checks": false,
"easy_to_find_messages": false,
"empty_line_in_statement": {
"allowChained": true
},
"empty_statement": true,
"empty_structure": {
"at": true,
"case": true,
"do": true,
"loopAllowIfSubrc": false,
"if": false,
"loop": true,
"select": true,
"try": true,
"when": false,
"while": true
},
"exit_or_check": true,
"expand_macros": true,
"exporting": true,
"forbidden_identifier": true,
"forbidden_pseudo_and_pragma": {
"ignoreGlobalClassDefinition": true,
"ignoreGlobalInterface": true,
"pragmas": ["##NO_TEXT"],
"pseudo": ["#EC NOTEXT"]
"pragmas": [
"##NO_TEXT"
],
"pseudo": [
"#EC NOTEXT"
]
},
"unused_types": {
"exclude": ["/aff_types/"]
},
"begin_single_include": true,
"names_no_dash": true,
"parser_missing_space": true,
"prefer_inline": false,
"reduce_string_templates": true,
"downport": false,
"line_break_multiple_parameters": true,
"unknown_types": true,
"forbidden_void_type": {
"check": [
"^boole_d$",
@ -165,6 +216,7 @@
"^cl_srvd_wb_object_data$",
"^cl_wb_object_operator_factory$",
"^cl_wer_const$",
"^cl_xco_",
"^cx_aff_",
"^cx_wb_object_operation_error$",
"^cx_xco_",
@ -172,167 +224,76 @@
"^i18_a_langiso2$",
"^if_adt_lock_handle$",
"^if_aff_",
"^if_satc_ci_variant_access$",
"^if_saunit_internal_result_type$",
"^if_saunit_internal_result$",
"^if_srvd_types$",
"^if_wb_adt_plugin_resource_co$",
"^if_wb_object_data_selection_co$",
"^if_wb_object_operator$",
"^if_xco_",
"^int4$",
"^numc2$",
"^pgmid$",
"^sabp_t_tadir_keys$",
"^sap_bool$",
"^srcsystem$",
"^stringtab$",
"^sychar01$",
"^sychar10$",
"^sychar70$",
"^sydatum$",
"^sylangu$",
"^syrepid$",
"^syst_langu$",
"^syst_title$",
"^syuzeit$",
"^xubname$"
]
},
"forbidden_identifier": true,
"try_without_catch": true,
"unused_variables": false,
"prefix_is_current_class": true,
"allowed_object_naming": true,
"check_comments": false,
"cyclic_oo": false,
"form_tables_obsolete": true,
"fully_type_constants": true,
"keep_single_parameter_on_one_line": true,
"prefer_returning_to_exporting": {
"exclude": ["/json/"]
},
"selection_screen_naming": true,
"sicf_consistency": true,
"sql_escape_host_variables": true,
"xml_consistency": true,
"newline_between_methods": false,
"chain_mainly_declarations": {
"definitions": true,
"write": true,
"move": true,
"refresh": true,
"unassign": true,
"sort": true,
"clear": true,
"hide": true,
"free": true,
"include": true,
"check": true
},
"check_abstract": true,
"check_text_elements": true,
"types_naming": {
"pattern": "^TY_.+$",
"exclude": ["/json/"]
},
"7bit_ascii": {
"exclude": [
"zcl_abapgit_git_commit.clas.testclasses.abap",
"zcl_abapgit_html_action_utils.clas.testclasses.abap"
]
},
"abapdoc": false,
"check_ddic": true,
"check_include": true,
"allowed_object_types": {
"allowed": [
"PROG",
"CLAS",
"INTF",
"FUGR",
"DEVC",
"TRAN",
"W3MI"
]
},
"ambiguous_statement": true,
"avoid_use": {
"define": true,
"testSeams": true,
"defaultKey": false,
"describeLines": true,
"break": true,
"statics": true
},
"begin_end_names": true,
"check_transformation_exists": true,
"check_syntax": true,
"class_attribute_names": {
"ignoreExceptions": true,
"ignoreInterfaces": false,
"statics": "^G._.*$",
"ignoreLocal": false,
"constants": "",
"instance": "^M._.*$"
},
"cloud_types": true,
"colon_missing_space": true,
"commented_code": {
"allowIncludeInFugr": false,
"exclude": ["otgr", "intf"]
},
"constructor_visibility_public": true,
"contains_tab": true,
"definitions_top": {
"exclude": ["/json/"]
},
"description_empty": {
"exclude": ["/test/"]
},
"double_space": false,
"empty_line_in_statement": {
"allowChained": true
},
"empty_statement": true,
"empty_structure": {
"loop": true,
"if": false,
"try": true,
"while": true,
"case": true,
"select": true,
"when": false,
"do": true,
"at": true
},
"exit_or_check": true,
"exporting": true,
"form_tables_obsolete": false,
"fully_type_itabs": false,
"function_module_recommendations": false,
"functional_writing": {
"ignoreExceptions": true
},
"global_class": true,
"identical_conditions": true,
"identical_contents": false,
"identical_descriptions": false,
"identical_form_names": true,
"if_in_if": true,
"implement_methods": true,
"in_statement_indentation": false,
"indentation": {
"ignoreExceptions": true,
"alignTryCatch": false,
"selectionScreenBlockIndentation": false,
"globalClassSkipFirst": false,
"ignoreExceptions": true,
"ignoreGlobalClassDefinition": false,
"ignoreGlobalInterface": false
"ignoreGlobalInterface": false,
"selectionScreenBlockIndentation": false
},
"inline_data_old_versions": true,
"intf_referencing_clas": false,
"keep_single_parameter_on_one_line": true,
"keyword_case": {
"style": "upper",
"ignoreExceptions": true,
"ignoreLowerClassImplmentationStatement": true,
"ignoreFunctionModuleName": false,
"ignoreGlobalClassBoundaries": false,
"ignoreGlobalClassDefinition": false,
"ignoreGlobalInterface": false,
"ignoreKeywords": [],
"ignoreGlobalClassBoundaries": false,
"ignoreFunctionModuleName": false
"ignoreLowerClassImplmentationStatement": true,
"style": "upper"
},
"line_break_multiple_parameters": true,
"line_break_style": true,
"line_length": {
"length": 120,
"exclude": ["zcl_abapgit_object_pdts.clas.testclasses.abap", "/json/"]
"exclude": [
"/json/",
"zcl_abapgit_object_pdts.clas.testclasses.abap"
],
"length": 125
},
"line_only_punc": {
"ignoreExceptions": true
@ -342,100 +303,207 @@
"local": "^LCL_.*$",
"test": "^LT.+$"
},
"local_testclass_consistency": true,
"local_variable_names": {
"expectedData": "^L._.*$",
"exclude": [
"/json/"
],
"expectedConstant": "^LC_.*$",
"expectedFS": "^<L._.*>$",
"exclude": ["/json/"]
"expectedData": "^L._.*$",
"expectedFS": "^<L._.*>$"
},
"main_file_contents": true,
"many_parentheses": true,
"max_one_method_parameter_per_line": true,
"max_one_statement": true,
"message_exists": false,
"message_exists": true,
"method_implemented_twice": true,
"method_length": {
"statements": 105,
"exclude": [
"zcl_abapgit_convert.clas.locals_imp.abap"
],
"checkForms": true,
"errorWhenEmpty": false,
"ignoreTestClasses": false,
"errorWhenEmpty": false
"statements": 110
},
"method_overwrites_builtin": {
"exclude": [
"zcl_abapgit_stage.clas.abap",
"zif_abapgit_log.intf.abap"
]
},
"method_parameter_names": {
"ignoreExceptions": true,
"importing": "^I._.*$",
"returning": "^R._.*$",
"changing": "^C._.*$",
"exclude": [
"/json/"
],
"exporting": "^E._.*$",
"ignoreExceptions": true,
"ignoreNames": [
"P_TASK"
],
"exclude": ["/json/"]
"importing": "^I._.*$",
"returning": "^R._.*$"
},
"mix_returning": true,
"modify_only_own_db_tables": false,
"msag_consistency": true,
"names_no_dash": true,
"nesting": {
"depth": 6
},
"newline_between_methods": false,
"no_aliases": {
"exclude": [
"/json/",
"zcl_abapgit_repo.clas.abap",
"zcl_abapgit_repo_online.clas.abap"
]
},
"no_chained_assignment": true,
"no_external_form_calls": false,
"no_inline_in_optional_branches": true,
"no_public_attributes": false,
"no_yoda_conditions": false,
"nrob_consistency": true,
"object_naming": {
"clas": "^ZC(L|X)\\_ABAPGIT\\_",
"intf": "^ZIF\\_ABAPGIT\\_",
"prog": "^ZABAPGIT",
"fugr": "^ZABAPGIT",
"tabl": "^Z",
"ttyp": "^Z",
"dtel": "^Z",
"doma": "^Z",
"msag": "^Z",
"tran": "^Z",
"enqu": "^EZ",
"auth": "^Z",
"pinf": "^Z",
"clas": "^ZC(L|X)\\_ABAPGIT\\_",
"doma": "^Z",
"dtel": "^Z",
"enqu": "^EZ",
"fugr": "^ZABAPGIT",
"idoc": "^Z",
"intf": "^ZIF\\_ABAPGIT\\_",
"msag": "^Z",
"pinf": "^Z",
"prog": "^ZABAPGIT",
"shlp": "^Z",
"ssfo": "^Z",
"ssst": "^Z",
"shlp": "^Z",
"tabl": "^Z",
"tran": "^Z",
"ttyp": "^Z",
"xslt": "^Z"
},
"obsolete_statement": true,
"parser_error": true,
"preferred_compare_operator": {
"badOperators": [
"EQ",
"><",
"NE",
"GE",
"GT",
"LT",
"LE"
"omit_parameter_name": {
"exclude": [
"/json/"
]
},
"omit_preceding_zeros": true,
"omit_receiving": true,
"parser_702_chaining": true,
"parser_error": true,
"parser_missing_space": true,
"pragma_style": true,
"prefer_corresponding": true,
"prefer_inline": false,
"prefer_is_not": false,
"prefer_pragmas": false,
"prefer_raise_exception_new": true,
"prefer_returning_to_exporting": {
"exclude": [
"/json/"
]
},
"prefer_xsdbool": true,
"preferred_compare_operator": {
"badOperators": [
"><",
"EQ",
"GE",
"GT",
"LE",
"LT",
"NE"
]
},
"prefix_is_current_class": true,
"reduce_string_templates": true,
"release_idoc": true,
"remove_descriptions": {
"ignoreWorkflow": false,
"exclude": [
"/json/"
],
"ignoreExceptions": false,
"exclude": ["/json/"]
"ignoreWorkflow": false
},
"rfc_error_handling": false,
"select_add_order_by": {
"skipForAllEntries": true
},
"select_performance": false,
"select_single_full_key": true,
"selection_screen_naming": true,
"sequential_blank": {
"lines": 4
},
"short_case": {
"length": 1,
"allow": [
"iv_action",
"sy"
]
],
"length": 1
},
"sicf_consistency": true,
"slow_parameter_passing": true,
"smim_consistency": true,
"space_before_colon": true,
"space_before_dot": {
"ignoreGlobalDefinition": true,
"ignoreExceptions": true
"ignoreExceptions": true,
"ignoreGlobalDefinition": true
},
"sql_escape_host_variables": true,
"sql_value_conversion": true,
"start_at_tab": true,
"static_call_via_instance": false,
"strict_sql": false,
"superclass_final": true,
"superfluous_value": true,
"sy_modification": {
"exclude": [
"zcl_abapgit_objects_program.clas.abap"
]
},
"tabl_enhancement_category": true,
"try_without_catch": true,
"type_form_parameters": true,
"types_naming": {
"exclude": [
"/json/"
],
"pattern": "^TY_.+$"
},
"uncaught_exception": true,
"unknown_types": true,
"unnecessary_chaining": false,
"unnecessary_pragma": {
"allowNoTextGlobal": true
},
"unnecessary_return": false,
"unreachable_code": true,
"unsecure_fae": false,
"unused_ddic": true,
"unused_methods": true,
"unused_types": {
"exclude": [
"/aff_types/"
]
},
"unused_variables": true,
"use_bool_expression": true,
"use_class_based_exceptions": {
"exclude": [
"zcl_abapgit_convert.clas.abap"
]
},
"use_line_exists": true,
"use_new": true,
"when_others_last": true,
"whitespace_end": true
"whitespace_end": true,
"xml_consistency": true
}
}

View File

@ -8,6 +8,291 @@ Legend
+ : added
- : removed
2025-01-01 v1.131.0
-------------------
! Remove need to `parallel_generators` server group (#7119)
+ VIEW: save `tddat` entries to transport (#7042)
+ Support for HTTP Destination (#7100)
+ Enhance logging with message id and number (#7111)
* Fix language conversion for language A (#7076)
* longtexts: workaround strange object names dump (#7077)
* SRVB: Clear fields and fix deserialize order (#7085)
* MSAG: Fix error handling during deletion (#7093)
* Fix error handling in exception viewer (#7095)
* Fix dark theme CSS whitespace (#7104)
* MSAG: Fix deletion of message longtexts (#7109)
* Fix RFC error handling (#7102)
* IDOC/IEXT: Fix deserialize in background (#7113)
* USCA: Fix missing transport entry (#7110)
* FUGS: Fix activation error (#7115)
* Limit number of GUI sessions (#7080)
* Fix dump when converting `xstring` to `bintab` (#7120)
2024-11-04 v1.130.0
-------------------
! PROG: Store flow logic as separate ABAP files (#7066)
! WDYN: Store controller code as separate ABAP files (#7069)
! SSFO: Store smartform code as separate ABAP files (#7071)
+ CLIF: Add missing translations for classes and interfaces (#6963)
+ UIAD: Add support for Launchpad App Descriptor Item (#6969)
+ BGQC: Add support for Background Processing Context (#6974)
+ DSFD: CDS Scalar Function Definition (#6951)
+ DRAS: CDS Aspect (#6953)
+ DSFI: CDS Scalar Function Implementation (#6952)
+ Add support for Software Component Relations (#7012)
* ENHO: Fix diff in generated comments of class enhancements (#6962)
* SXSD: Fix check if BADI exists (#6961)
* CDBO: Fix missing parameters in `constructor` (#6966)
* Fix dump in activation error handling (#6967)
* Fix deserialize SEOCLASSTX for INTF [AFF] (#6983)
* Allow staging for empty repositories (#6981)
* fix: syst_langu does not exist on older releases (#6999)
* fix sticky header with browser control warning (#6997)
* DSFI: Updated object handler to match the latest AFF definition (#7013)
* Filenames for translation are case sensitive (#6995)
* Enable deserialization of DSFD, DSFI and DRAS (#7029)
* PROG: Support dynpros with splitter control (#7035, #7038)
* Fix `CX_SY_ZERODIVIDE` dump in progress bar (#7036)
* JOBD: Clear `changedby` field (#7039)
* SFPF: Add syntax highlighting for `xdp` files (#7040)
* SFPF: Fix check if object exists (#7041)
* Add package check when creating repository (#7037)
* FUGS: serialization (#7045)
* Enable CDS types (#7048)
* Don't discard includes of nonexistent FUGR (#7053)
* Added enhanced method resolution for background exit (#7059)
* TABU: Display transport requests (#7063)
* Show diffs in case of trailing spaces (#7062)
- remove 200% icon scaling (#7003)
2024-07-01 v1.129.0
-------------------
+ DEVC,NSPC: Serialize software component for add-ons (#6891)
+ Where-used page (#6897)
+ CDBO: Customer Data Browser Object (#6930)
+ VIEW: Add authorization group to serialize and deserialize (#6918)
+ Exclude files from remote (#6942)
+ Read-only support for SXSD - Classic BAdI definition (#6958)
* Change message if local packages got lost (#6905)
* SOTS: Remove from TADIR selection (#6906)
* Fix bug in "Object to Files" Page. (#6908)
* DEVC: Fix "Package must be assigned to the software component LOCAL" (#6912)
* Improve error message for SUSH objects not being supported. (#6916)
* Use bcp47 language code for AFF (#6915)
* Suppress popup when using background API (#6926)
* Fix Issue Encountered on "Data Config" Page. (#6913)
* Bugfix, new pull page: decide package warnings (#6932)
* Set Character Limit for "Table" Field in Data Config page (#6934)
* ENHO: workaround dump during serialization (#6935)
* HOOK: catch exception (#6937)
* Sync UI theme in dark mode (#6940)
* Set Default Git User Details (#6920)
* Small performance improvement in folder logic (#6941)
* Fix folder logic buffer (#6945)
* Fix yank mode - copy to clipboad (#6946)
* Data serializer: fix carriage return problem (#6957)
* TABL: Clear DBINCLEXCL and DBSYSSELx fields (#6960)
2024-04-05 v1.128.0
-------------------
! Make HTTP/1.1 new default in abapGit (#6902)
! Distinguish between "Global Settings" and "Repository Settings" (#6759)
+ Add support for DRTY - CDS Type (#6767)
+ Add support for DTEB - CDS Entity Buffer (#6769)
+ Add "ignore sub-packages" option to package export (#6815)
+ HTTP connection check and improved error messages (#6806)
+ UIPG, UIST: Add support for Launchpad Page and Space Templates (#6873)
+ ENHO/ENHS: Add missing longtexts (#6890)
* Fix typos and adjust comments (#6778, #6779, #6780, #6783, #6785, #6786m #6858, #6864)
* User exit: include settings parameters in change_tadir() (#6775)
* Remove Duplicate Entries in Command Palette (#6763)
* Ignore macOS "Desktop Services Store" files (#6787)
* Fix ABAP Language Version Handling for Repository Setting "Any" for AFF Object Types (#6793)
* Fix bug in Command Palette (#6799)
* DIAL: Prefill package popup (#6805)
* XSLT: Add check for correct EOL separator (#6803)
* Update the text "Submit Query" in the Command Palette. (#6810)
* CLAS/INTF-SYNTAX_CHECK: Suppress status message (#6812)
* Improve error messages when checking branches/tags (#6814)
* Improve form validation of text fields (#6813)
* Fix bug in Personal settings page (#6818)
* Fix Navigation Issue in "Config Display" and "Config Edit" pages. (#6820)
* Fix Filter Application Bug (#6824)
* Change transport type when setting original system (#6816)
* FORM: Fix existence check (#6832)
* Apack: fix namespace problem (#6841)
* Remove duplicate labels from Command Palette. (#6821)
* IDOC: Fix MOVE_TO_LIT_NOTALLOWED_NODATA (#6852)
* SICF: Include alternate service name (#6853)
* Apack: additional namespace case (#6851)
* SFPI: exists() also look for inactive objects (#6867)
* Code inspector pages improvements (#6862)
* AFF: deserialize translation files (#6830)
* Fix Unexpected Functionality for "Maximum Length of Comment" Field (#6871)
* Avoid popup on exit after saving remote settings (#6875)
* Fix Hint for "Maximum Length of Comment" Field (#6877)
* Fix changing transport type when setting original system (#6870)
* Limit Package Name to 30 characters (#6889)
* Item graph: performance (#6885)
* Add specific error message for 426 http error (#6901)
2024-01-24 v1.127.0
-------------------
+ Flow Page (beta, https://docs.abapgit.org/user-guide/reference/flow.html)
+ Repo List: Make labels clickable (#6651)
+ Support short/long timestamps in field rules (#6666)
+ Add "Ignore" option for ABAP Language Version (#6663)
+ Add some stats for DB view (#6675)
+ Remember last used folder (#6677)
+ Debug info: Show exits coded in exit super class (#6708)
+ New feature: Original system (#6715)
* Prevent calls to exit implementations in tests (#6653)
* Disable superfluous check for offline repos (#6662)
* Fix filename for export to ZIP (#6664, #6665)
* DDLX: Set "Changed At" and "Changed By" (#6661)
* Fix home and back again (#6670)
* Debug page: open external links in new window (#6671)
* Fix running multiple instances of abapGit (#6679)
* CLAS: Fix deserializing child exception classes (#6682)
* IOBJ: Fix uninstall (#6685)
* TABU: Fix staging in background process (#6683)
* TABU: Fix deserializing data config (#6684)
* Check for ABAP language version during serialize (#6681)
* TSTC select, ABAP Cloud/Steampunk compatibility (#6695)
* Fix ABAP language version check (#6693)
* CLAS: Avoid popups in lower releases (#6709)
* FUGR: Fix check if include belong to function grp (#6711)
* Add object type to error message (#6714)
* Fix abapGit popups external call (#6716)
* Refresh repository to reduce memory usage in background mode (#6728)
* Remove exception when deleting files (#6729)
* Do a syntax check before accessing version constant (#6733)
* Avoid loss of log during background processing (#6736)
* Fix APACK issues (#6743)
* DDLS: deletes remaining TADIR entry during delete (#6745)
* Fix: Cannot change repo settings without version constant (#6753)
* Create package popup: Fix prefill package name (#6752)
* BG: Ensure auth buffer is cleared even in error case (#6756)
* Fix empty JSON file for AFF based objects (#6766)
2023-11-16 v1.126.0
-------------------
! Add ABAP Language Version to repo settings (experimental feature) (#6476,#6484,#6486,#6487,#6488,#6525,#6603)
! IAMU v2: Serialize MIMEs as separate file + fixes (#6515)
! SRVB: Clear metadata links (#6550)
! Change the order of popups on pull; first check prerequisites and dependencies (#6613)
! Add "name" to repository settings (#6633,#6634,#6635,#6637)
+ Add option to remove all objects but keep repository (#6499)
+ Diff View: Collapse/expand all diffs (#6511)
+ Add back button to DB page (#6521)
+ unit test page: add re-run button (#6533)
+ Improve unit test page (#6543)
+ DB edit+display page: add back button (#6545)
+ Add exit to adjust rfc server group for parallel serialization (#6503)
+ Implement changed_by for several objects (#6554)
+ Repo View: Shorten URL display (#6555)
+ Pass repo metadata to adjust_display_filename exit (#6556)
+ Improve Backup (#6617)
+ Enhance repo labels (#6442)
* Repo view: Fix display of original system (#6478)
* Consider filter at zcl_abapgit_repo_status=>calculate (#6480)
* Escape display name for javascript repo catalog (#6482)
* Remove test data container variants on pull that do not exist on the remote (#6493)
* ECTD: Fix diff after import based on sort order (#6494)
* CMPT: Remove redundant and admin fields from XML (#6502)
* Fix dump in when using namespaced package for repo (#6500)
* Do not assign T packages to a transport request (#6506)
* Fix command palette default form action with edge (#6508)
* Fix link hints for radio buttons with edge control (#6509)
* Fix unit tests in zcl_abapgit_abap_language_vers (#6516)
* SFxx: Fix missing lock checks and unlocking (#6519)
* Diff: Fix refresh of single file (#6524)
* CUS2: Add missing tadir and transport entries (#6527)
* CMPT: Fix missing transport entry on deletion (#6526)
* Fix ignoring sub-packages when adding offline repo (#6538)
* TOBJ: Serialization shows diffs on an HANA database (#6547)
* Fix 'determine_max_processes' for disabled Parallel Processing and Merged abapGit (#6559)
* PROG, FUGR: Fix handling of inactive code (#6557)
* TABL: Drop secondary indexes on pull (#6578)
* PR ENUM: fix for private repos (#6592)
* Add version constant back to repo settings (#6596)
* zlib performance optimizations (#6597)
* FUGR: Fix import of template screens (#6582)
* Show object type in activation log (#6611)
* Fix "Open in Main Language" if language is not installed (#6610)
* APACK: Manifest interface in sub-package (#6614)
* SSFO: Fix order of T_CAPTION data (#6609)
* Fix dump restoring abapGit backup (#6621)
* Fix typo in "orange" label (#6622)
* Sort pull request popup (#6623)
* SAP GUI for HTML: Fix dialog buttons (#6566)
* APACK: Allow overwriting missing dependencies (#6612)
* INTF: Fix file format feature switch (#6628)
* Fix text field when switching to offline (#6632)
* Fix APACK for namespaces (#6639)
* Fix deletion/uninstall when using local settings (#6640)
* Fix APACK performance (#6649)
2023-09-06 v1.125.0
-------------------
+ Include deletions in "Transport to Branch" (#6291)
+ Persist repository list settings (#6295)
+ Repo view: Show icon for different original language (#6297)
+ Added auto-confirmation of transport messages (#6317)
+ EEEC: Enable object handler for Event Consumption Model (#6348)
+ Separate translations from XML, PO files (#6189)
+ Unit test page result: show syntax errors (#6308)
+ SOD1/2: Add support for API Package & API Package Assignment (#6352)
+ Enhance experimental features (#6393)
+ SKTD: Knowledge Transfer Document (#6400)
+ APIS: API Release State (#6403)
+ IWOM/IWPR/TRAN: Implement changed_by (#6411)
+ Add online/offline filter option for repo list (#6449)
* Don't dump for unknown frontend (#6302)
* IDOC, TABL: Set released and closed status (#6306)
* Fix is_dirty check for Repo Settings (#6309)
* Unit test page: don't show SAUNIT_NO_TEST_CLASS err (#6310)
* Fixed links to new documentation (#6319)
* Fix "Data" page: On back go back (#6322)
* OO serializer: skip includes not found (#6324)
* Bugfix, dump GETWA_NOT_ASSIGNED (#6325)
* Fix syntax error insert report ... version (#6327)
* Fix syntax error in zcl_abapgit_file_deserialize (#6328)
* Fix dialog exit (#6326)
* Fix GUI actions for Edge browser control (#6336)
* Fix processing of TABU entries in case of multiple tables (#6338)
* Fix Code Inspector jump (#6343)
* Fix hotkeys for edge browser control (#6344)
* Handling unsupported objects in deserialize process (#6320)
* ALV: steampunk syntax compatibility (#6381)
* Fix description handling (#6384)
* TABU: Update entries with same key but different component values (#6380)
* Clarify minimum version (#6391)
* Fix potential crash in background mode (#6392)
* TABU: Fix deserializing data (#6394)
* Fix update of checksums on pull (#6395)
* Fix unit test page if there are no unit tests (#6397)
* Fix edge control (#6401)
* DRUL: fix changed_by() (#6402)
* SOD1/2: Check for support and add changed_by (#6404)
* Improve confusing progress message (seemingly always 200 objects) (#6432)
* Improve performance of push for large repos (#6390)
* Fix runtime error in zcl_abapgit_abap_language_vers (#6427)
* Fix Syntax Check warnings regarding secondary keys (#6435)
* DSYS: Fix error for objects containing / in name (#6431)
* Clarify error messages about folder logic (#6447)
+ Unit Test List subpackages (#6445)
* CLAS/INTF: Fix seocompotx during deserialization (#6457)
* Apply filter after TADIR selection (#6462)
* Fix dump in ZCL_ABAPGIT_GIT_PACK=>DECODE (#6468)
2023-05-15 v1.124.0
-------------------
@ -32,7 +317,7 @@ Legend
* DEVC: Clear TPCLASS (#6251)
* NROB: clear admin fields (#6255, #6280)
* INTF, WEBI: Hide objects generated by proxy (SPRX) (#6259)
* Fix for namespace check when there are multiple namespaces within a repo (#6263)
* Fix for namespace check when there are multiple namespaces within a repo (#6263)
* Run unit tests: Fallback to code inspector (#6264)
* fix dump in `zcl_abapgit_data_utils` while getting key fields (#6269)
* Fix dump related to exit implementations (#6268)
@ -1418,7 +1703,7 @@ Legend
------------------
* minor fixes for tags
* downport
* fix serilization of SXCI in background mode
* fix serialization of SXCI in background mode
2018-01-03 v1.51.0
------------------

View File

@ -43,9 +43,11 @@
"seoc_exposure_public",
"seoc_state_implemented",
"seoc_version_active",
"seoc_version_deleted",
"seoc_version_inactive",
"seok_access_free",
"seok_access_modify",
"seox_false",
"seok_pgmid_r3tr",
"seoo_cmptype_type",
"seoo_cmptype_event",
@ -66,6 +68,8 @@
"skwfc_obtype_folder",
"skwfc_obtype_loio",
"so2_controller",
"srext_ext_class_pool",
"srext_ext_interface_pool",
"ststc_c_type_dialog",
"ststc_c_type_object",
"ststc_c_type_parameters",

61
deps/cdnames.tabl.xml vendored Normal file
View File

@ -0,0 +1,61 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>CDNAMES</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>CDNAMES</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>REPNAMEC</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>REPNAMET</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>REPNAMEFIX</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>REPNAMEVAR</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FGRP</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

24
deps/cdobjectcl.dtel.xml vendored Normal file
View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>CDOBJECTCL</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<HEADLEN>15</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>20</SCRLEN2>
<SCRLEN3>40</SCRLEN3>
<DDTEXT>CDOBJECTCL</DDTEXT>
<REPTEXT>CDOBJECTCL</REPTEXT>
<SCRTEXT_S>CDOBJECTCL</SCRTEXT_S>
<SCRTEXT_M>CDOBJECTCL</SCRTEXT_M>
<SCRTEXT_L>CDOBJECTCL</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>CHAR</DATATYPE>
<LENG>000015</LENG>
<OUTPUTLEN>000015</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -2,10 +2,10 @@ CLASS cl_package_factory DEFINITION PUBLIC.
PUBLIC SECTION.
CLASS-METHODS load_package
IMPORTING
i_package_name TYPE devclass
i_package_name TYPE devclass
VALUE(i_force_reload) TYPE abap_bool OPTIONAL
EXPORTING
VALUE(e_package) TYPE REF TO if_package
VALUE(e_package) TYPE REF TO if_package
EXCEPTIONS
object_not_existing
unexpected_error
@ -19,9 +19,9 @@ CLASS cl_package_factory DEFINITION PUBLIC.
!i_suppress_dialog TYPE abap_bool DEFAULT abap_false
!i_suppress_access_permission TYPE abap_bool DEFAULT abap_false
EXPORTING
VALUE(e_package) TYPE REF TO if_package
VALUE(e_package) TYPE REF TO if_package
CHANGING
c_package_data TYPE any.
c_package_data TYPE any.
ENDCLASS.
CLASS cl_package_factory IMPLEMENTATION.

25
deps/cl_package_helper.clas.abap vendored Normal file
View File

@ -0,0 +1,25 @@
CLASS cl_package_helper DEFINITION PUBLIC.
PUBLIC SECTION.
CLASS-METHODS check_package_name
IMPORTING
i_package_name TYPE any.
CLASS-METHODS check_package_existence
IMPORTING
i_package_name TYPE any
EXPORTING
e_package_exists TYPE abap_bool.
ENDCLASS.
CLASS cl_package_helper IMPLEMENTATION.
METHOD check_package_name.
ASSERT i_package_name IS NOT INITIAL.
ENDMETHOD.
METHOD check_package_existence.
ASSERT i_package_name IS NOT INITIAL.
e_package_exists = abap_true.
ENDMETHOD.
ENDCLASS.

61
deps/cvers.tabl.xml vendored Normal file
View File

@ -0,0 +1,61 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>CVERS</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<CONTFLAG>W</CONTFLAG>
</DD02V>
<DD09L>
<TABNAME>CVERS</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<PUFFERUNG>X</PUFFERUNG>
<BUFALLOW>X</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>COMPONENT</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>RELEASE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000020</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000010</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>EXTRELEASE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000020</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000010</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>COMP_TYPE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

54
deps/cvers_ref.tabl.xml vendored Normal file
View File

@ -0,0 +1,54 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>CVERS_REF</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<CONTFLAG>W</CONTFLAG>
</DD02V>
<DD09L>
<TABNAME>CVERS</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<PUFFERUNG>X</PUFFERUNG>
<BUFALLOW>X</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>COMPONENT</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LANGU</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DESC_TEXT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000160</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000080</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

62
deps/dd02t.tabl.xml vendored Normal file
View File

@ -0,0 +1,62 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>DD02T</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>DD02T</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TABNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DDLANGUAGE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
<LANGUFLAG>X</LANGUFLAG>
</DD03P>
<DD03P>
<FIELDNAME>AS4LOCAL</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4VERS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000004</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DDTEXT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000120</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000060</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

460
deps/dd02v.tabl.xml vendored Normal file
View File

@ -0,0 +1,460 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>DD02V</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>DD02V</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TABNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DDLANGUAGE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
<LANGUFLAG>X</LANGUFLAG>
</DD03P>
<DD03P>
<FIELDNAME>TABCLASS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000016</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000008</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SQLTAB</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DATMIN</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000020</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000010</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DATMAX</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000020</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000010</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DATAVG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000020</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000010</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CLIDEP</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>BUFFERED</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>COMPRFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LANGDEP</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DDTEXT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000120</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000060</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ACTFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>APPLCLASS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AUTHCLASS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000004</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000002</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4USER</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000024</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000012</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4DATE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>D</INTTYPE>
<INTLEN>000016</INTLEN>
<DATATYPE>DATS</DATATYPE>
<LENG>000008</LENG>
<MASK> DATS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>AS4TIME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>T</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>TIMS</DATATYPE>
<LENG>000006</LENG>
<MASK> TIMS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>MASTERLANG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
</DD03P>
<DD03P>
<FIELDNAME>MAINFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CONTFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>RESERVETAB</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>GLOBALFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>PROZPUFF</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000006</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000003</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>VIEWCLASS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>VIEWGRANT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>MULTIPLEX</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SHLPEXI</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>PROXYTYPE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>EXCLASS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000001</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>WRONGCL</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ALWAYSTRP</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ALLDATAINCL</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>WITH_PARAMETERS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>EXVIEW_INCLUDED</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>KEYMAX_FEATURE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>KEYLEN_FEATURE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>TABLEN_FEATURE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>NONTRP_INCLUDED</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>VIEWREF</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>VIEWREF_ERR</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>VIEWREF_POS_CHG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>TBFUNC_INCLUDED</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>IS_GTT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SESSION_VAR_EX</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FROM_ENTITY</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>PK_IS_INVHASH</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>USED_SESSION_VARS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000010</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000005</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>HDB_ONLY_ENTITY_INCLUDED</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

691
deps/dd03p.tabl.xml vendored Normal file
View File

@ -0,0 +1,691 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>DD03P</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>DD03P</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TABNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FIELDNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DDLANGUAGE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
</DD03P>
<DD03P>
<FIELDNAME>POSITION</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000004</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>KEYFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>MANDATORY</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ROLLNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CHECKTABLE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ADMINFIELD</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>INTTYPE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>INTLEN</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000006</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>REFTABLE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>PRECFIELD</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>REFFIELD</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CONROUT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000020</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000010</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>NOTNULL</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DOMNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ROUTPUTLEN</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000006</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>MEMORYID</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LOGFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>HEADLEN</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000004</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000002</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SCRLEN1</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000004</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000002</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SCRLEN2</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000004</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000002</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SCRLEN3</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000004</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000002</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DTELGLOBAL</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DTELMASTER</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
</DD03P>
<DD03P>
<FIELDNAME>RESERVEDTE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DATATYPE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LENG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000006</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OUTPUTLEN</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000006</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DECIMALS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000006</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LOWERCASE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SIGNFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LANGFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>VALEXI</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ENTITYTAB</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CONVEXIT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000010</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000005</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>MASK</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>MASKLEN</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000004</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ACTFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DDTEXT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000120</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000060</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>REPTEXT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000110</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000055</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SCRTEXT_S</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000020</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000010</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SCRTEXT_M</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SCRTEXT_L</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000080</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000040</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DOMMASTER</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
</DD03P>
<DD03P>
<FIELDNAME>RESERVEDOM</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DOMGLOBAL</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DOMNAME3L</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SHLPORIGIN</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SHLPNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SHLPFIELD</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>TABLETYPE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DEPTH</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000004</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000002</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>COMPTYPE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DEFFDNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>GROUPNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>REFTYPE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>PROXYTYPE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LANGUFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>EXCLASS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000001</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LTRFLDDIS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>BIDICTRLC</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DBPOSITION</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000004</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ANONYMOUS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OUTPUTSTYLE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000004</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000002</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>NOHISTORY</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AMPMFORMAT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>STREAMORLOC</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>STRORLOCPOS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000004</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000002</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SQL_PASSVALUE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>IS_VIRTUAL</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>IS_CALCULATED</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>EXTENDNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SRS_ID</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000020</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000010</LENG>
<MASK> NUMC</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

115
deps/dd05m.tabl.xml vendored Normal file
View File

@ -0,0 +1,115 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>DD05M</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>DD05M</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TABNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FIELDNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FORTABLE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FORKEY</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CHECKTABLE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CHECKFIELD</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>PRIMPOS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000004</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DOMNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DATATYPE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LENG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000006</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FORSTRING</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000120</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000060</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

143
deps/dd08v.tabl.xml vendored Normal file
View File

@ -0,0 +1,143 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>DD08V</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>DD08V</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TABNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FIELDNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DDLANGUAGE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
<LANGUFLAG>X</LANGUFLAG>
</DD03P>
<DD03P>
<FIELDNAME>CHECKTABLE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FRKART</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CLASFIELD</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CLASVALUE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000020</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000010</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CARD</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000004</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000002</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CHECKFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DDTEXT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000120</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000060</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ARBGB</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>MSGNR</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000006</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000003</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>NOINHERIT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CARDLEFT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000004</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000002</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

316
deps/dd12v.tabl.xml vendored Normal file
View File

@ -0,0 +1,316 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>DD12V</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>DD12V</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>SQLTAB</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>INDEXNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000006</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000003</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4LOCAL</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4VERS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000004</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DDLANGUAGE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
<LANGUFLAG>X</LANGUFLAG>
</DD03P>
<DD03P>
<FIELDNAME>AUTHCLASS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000004</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000002</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>UNIQUEFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4USER</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000024</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000012</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4DATE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>D</INTTYPE>
<INTLEN>000016</INTLEN>
<DATATYPE>DATS</DATATYPE>
<LENG>000008</LENG>
<MASK> DATS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>AS4TIME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>T</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>TIMS</DATATYPE>
<LENG>000006</LENG>
<MASK> TIMS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>ACTFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DBINDEX</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000080</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000040</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DBSTATE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DBINCLEXCL</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DBSYSSEL1</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000006</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000003</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DBSYSSEL2</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000006</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000003</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DBSYSSEL3</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000006</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000003</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DBSYSSEL4</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000006</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000003</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DDTEXT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000120</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000060</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ISEXTIND</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FULL_TEXT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LANGU_COLUMN</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>MIME_TYPE_COL</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>MIME_TYPE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000254</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000127</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LANGU_DETECTION</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000400</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000200</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FAST_PREPROCESS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FUZZY_SEARCH_INDX</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SEARCH_ONLY</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>UPDATE_MODE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000020</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000010</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CONFIGURATION</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>PHRASE_INDX_RATIO</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000006</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000003</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>TEXT_ANALYSIS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>TOKEN_SEPARATORS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000100</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000050</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

89
deps/dd17v.tabl.xml vendored Normal file
View File

@ -0,0 +1,89 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>DD17V</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>DD17V</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>DDLANGUAGE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
<LANGUFLAG>X</LANGUFLAG>
</DD03P>
<DD03P>
<FIELDNAME>SQLTAB</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>INDEXNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000006</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000003</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>POSITION</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000004</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4LOCAL</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4VERS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000004</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FIELDNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DESCFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

52
deps/dd35v.tabl.xml vendored Normal file
View File

@ -0,0 +1,52 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>DD35V</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>DD35V</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TABNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FIELDNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SHLPNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SHLPINHER</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

169
deps/dd36m.tabl.xml vendored Normal file
View File

@ -0,0 +1,169 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>DD36M</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>DD36M</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TABNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FIELDNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SHLPNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SHLPFIELD</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FLPOSITION</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000004</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SHTYPE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SHTABLE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SHFIELD</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SHLPINPUT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SHLPOUTPUT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ROLLNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DOMNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DATATYPE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LENG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000006</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DECIMALS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000006</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DEFAULTVAL</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000042</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000021</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DEFAULTTYP</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

105
deps/e070.tabl.xml vendored Normal file
View File

@ -0,0 +1,105 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>E070</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<DDTEXT>E070</DDTEXT>
<CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>ZE070</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TRKORR</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>TRKORR</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>TRFUNCTION</FIELDNAME>
<ROLLNAME>TRFUNCTION</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<VALEXI>X</VALEXI>
<SHLPORIGIN>F</SHLPORIGIN>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>TRSTATUS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>TARSYSTEM</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000020</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000010</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>KORRDEV</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4USER</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000024</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000012</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4DATE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>D</INTTYPE>
<INTLEN>000016</INTLEN>
<DATATYPE>DATS</DATATYPE>
<LENG>000008</LENG>
<MASK> DATS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>AS4TIME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>T</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>TIMS</DATATYPE>
<LENG>000006</LENG>
<MASK> TIMS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>STRKORR</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

116
deps/e071.tabl.xml vendored Normal file
View File

@ -0,0 +1,116 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>E071</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<DDTEXT>E071</DDTEXT>
<CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>ZE071</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TRKORR</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>TRKORR</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>AS4POS</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000012</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>NUMC</DATATYPE>
<LENG>000006</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>PGMID</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OBJECT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OBJ_NAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000240</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000120</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OBJFUNC</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LOCKFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>GENNUM</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000006</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000003</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LANG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
<LANGUFLAG>X</LANGUFLAG>
</DD03P>
<DD03P>
<FIELDNAME>ACTIVITY</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

158
deps/e071k.tabl.xml vendored Normal file
View File

@ -0,0 +1,158 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>E071K</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<DDTEXT>E071K</DDTEXT>
<CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>ZE071K</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TRKORR</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>TRKORR</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>PGMID</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OBJECT</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OBJNAME</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4POS</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000012</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>NUMC</DATATYPE>
<LENG>000006</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>MASTERTYPE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>MASTERNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000080</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000040</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>VIEWNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OBJFUNC</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>TABKEY</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000240</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000120</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SORTFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LANG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
<LANGUFLAG>X</LANGUFLAG>
</DD03P>
<DD03P>
<FIELDNAME>ACTIVITY</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

54
deps/e07t.tabl.xml vendored Normal file
View File

@ -0,0 +1,54 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>E07T</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<DDTEXT>E07T</DDTEXT>
<CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>ZE07T</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<UEBERSETZ>N</UEBERSETZ>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TRKORR</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>TRKORR</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>LANGU</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
<LANGUFLAG>X</LANGUFLAG>
</DD03P>
<DD03P>
<FIELDNAME>AS4TEXT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000120</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000060</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

128
deps/edisegmdef.tabl.xml vendored Normal file
View File

@ -0,0 +1,128 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>EDISEGMDEF</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>EDISEGMDEF</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>SEGTYP</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000054</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000027</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>VERSION</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000006</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000003</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SEGDEF</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>RELEASED</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CLOSED</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CREDATE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>D</INTTYPE>
<INTLEN>000016</INTLEN>
<DATATYPE>DATS</DATATYPE>
<LENG>000008</LENG>
<MASK> DATS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>CRETIME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>T</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>TIMS</DATATYPE>
<LENG>000006</LENG>
<MASK> TIMS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>LDATE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>D</INTTYPE>
<INTLEN>000016</INTLEN>
<DATATYPE>DATS</DATATYPE>
<LENG>000008</LENG>
<MASK> DATS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>LTIME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>T</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>TIMS</DATATYPE>
<LENG>000006</LENG>
<MASK> TIMS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>FIELDNUM</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000004</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>EXPLENG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000004</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>APPLREL</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000020</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000010</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

119
deps/edisegmhd.tabl.xml vendored Normal file
View File

@ -0,0 +1,119 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>EDISEGMHD</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>EDISEGMHD</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>SEGTYP</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000054</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000027</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>QUALIFIER</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>GENERATED</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>PRESP</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>PWORK</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>PLAST</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000024</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000012</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CREDATE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>D</INTTYPE>
<INTLEN>000016</INTLEN>
<DATATYPE>DATS</DATATYPE>
<LENG>000008</LENG>
<MASK> DATS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>CRETIME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>T</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>TIMS</DATATYPE>
<LENG>000006</LENG>
<MASK> TIMS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>LDATE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>D</INTTYPE>
<INTLEN>000016</INTLEN>
<DATATYPE>DATS</DATATYPE>
<LENG>000008</LENG>
<MASK> DATS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>LTIME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>T</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>TIMS</DATATYPE>
<LENG>000006</LENG>
<MASK> TIMS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>DESCRP</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000120</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000060</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

70
deps/edisegstru.tabl.xml vendored Normal file
View File

@ -0,0 +1,70 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>EDISEGSTRU</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>EDISEGSTRU</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>SEGTYP</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000054</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000027</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>POS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000004</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FIELDNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ROLLNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ISOCODE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>EXPLENG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000004</LENG>
<MASK> NUMC</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

24
deps/enqmode.dtel.xml vendored Normal file
View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>ENQMODE</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<HEADLEN>55</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>20</SCRLEN2>
<SCRLEN3>40</SCRLEN3>
<DDTEXT>ENQMODE</DDTEXT>
<REPTEXT>ENQMODE</REPTEXT>
<SCRTEXT_S>ENQMODE</SCRTEXT_S>
<SCRTEXT_M>ENQMODE</SCRTEXT_M>
<SCRTEXT_L>ENQMODE</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<OUTPUTLEN>000001</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -1,5 +1,8 @@
INTERFACE if_package PUBLIC.
DATA wbo_korr_flag TYPE c LENGTH 1 READ-ONLY.
DATA package_name TYPE string READ-ONLY.
DATA short_text TYPE string READ-ONLY.
DATA super_package_name TYPE string READ-ONLY.
DATA software_component TYPE string READ-ONLY.
DATA application_component TYPE string READ-ONLY.
DATA transport_layer TYPE string READ-ONLY.

43
deps/ko100.tabl.xml vendored Normal file
View File

@ -0,0 +1,43 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>KO100</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>KO100</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>PGMID</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OBJECT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>TEXT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000120</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000060</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

54
deps/lxe_pcx_s1.tabl.xml vendored Normal file
View File

@ -0,0 +1,54 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>LXE_PCX_S1</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>Text Pairs</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TEXTKEY</FIELDNAME>
<ROLLNAME>LXETEXTKEY</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>S_TEXT</FIELDNAME>
<ROLLNAME>LXEUNITLIN</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>T_TEXT</FIELDNAME>
<ROLLNAME>LXEUNITLIN</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>UNITMLT</FIELDNAME>
<ROLLNAME>LXEUNITMLT</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>UPPCASE</FIELDNAME>
<ROLLNAME>LXEUPPCASE</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<VALEXI>X</VALEXI>
<SHLPORIGIN>F</SHLPORIGIN>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>TEXTTYPE</FIELDNAME>
<ROLLNAME>LXETEXTTYPE</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<COMPTYPE>E</COMPTYPE>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

24
deps/lxecustmnr.dtel.xml vendored Normal file
View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>LXECUSTMNR</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<HEADLEN>12</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>15</SCRLEN2>
<SCRLEN3>20</SCRLEN3>
<DDTEXT>LXECUSTMNR</DDTEXT>
<REPTEXT>LXECUSTMNR</REPTEXT>
<SCRTEXT_S>LXECUSTMNR</SCRTEXT_S>
<SCRTEXT_M>LXECUSTMNR</SCRTEXT_M>
<SCRTEXT_L>LXECUSTMNR</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>CHAR</DATATYPE>
<LENG>000006</LENG>
<OUTPUTLEN>000006</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>

24
deps/lxeisolang.dtel.xml vendored Normal file
View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>LXEISOLANG</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<HEADLEN>21</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>15</SCRLEN2>
<SCRLEN3>21</SCRLEN3>
<DDTEXT>LXEISOLANG</DDTEXT>
<REPTEXT>LXEISOLANG</REPTEXT>
<SCRTEXT_S>LXEISOLANG</SCRTEXT_S>
<SCRTEXT_M>LXEISOLANG</SCRTEXT_M>
<SCRTEXT_L>LXEISOLANG</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<OUTPUTLEN>000004</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>

24
deps/lxeobjname.dtel.xml vendored Normal file
View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>LXEOBJNAME</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<HEADLEN>55</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>18</SCRLEN2>
<SCRLEN3>28</SCRLEN3>
<DDTEXT>LXEOBJNAME</DDTEXT>
<REPTEXT>LXEOBJNAME</REPTEXT>
<SCRTEXT_S>LXEOBJNAME</SCRTEXT_S>
<SCRTEXT_M>LXEOBJNAME</SCRTEXT_M>
<SCRTEXT_L>LXEOBJNAME</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>CHAR</DATATYPE>
<LENG>000070</LENG>
<OUTPUTLEN>000070</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>

25
deps/lxetextkey.dtel.xml vendored Normal file
View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>LXETEXTKEY</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<DOMNAME>LXECHAR32</DOMNAME>
<HEADLEN>32</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>15</SCRLEN2>
<SCRLEN3>20</SCRLEN3>
<DDTEXT>LXETEXTKEY</DDTEXT>
<REPTEXT>LXETEXTKEY</REPTEXT>
<SCRTEXT_S>LXETEXTKEY</SCRTEXT_S>
<SCRTEXT_M>LXETEXTKEY</SCRTEXT_M>
<SCRTEXT_L>LXETEXTKEY</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>CHAR</DATATYPE>
<LENG>000032</LENG>
<OUTPUTLEN>000032</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>

25
deps/lxetexttype.dtel.xml vendored Normal file
View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>LXETEXTTYPE</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<DOMNAME>LXETEXTTYPE</DOMNAME>
<HEADLEN>09</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>15</SCRLEN2>
<SCRLEN3>20</SCRLEN3>
<DDTEXT>LXETEXTTYPE</DDTEXT>
<REPTEXT>LXETEXTTYPE</REPTEXT>
<SCRTEXT_S>LXETEXTTYPE</SCRTEXT_S>
<SCRTEXT_M>LXETEXTTYPE</SCRTEXT_M>
<SCRTEXT_L>LXETEXTTYPE</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<OUTPUTLEN>000004</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>

25
deps/lxeunitlin.dtel.xml vendored Normal file
View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>LXEUNITLIN</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<DOMNAME>LXEUNITLIN</DOMNAME>
<HEADLEN>55</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>15</SCRLEN2>
<SCRLEN3>36</SCRLEN3>
<DDTEXT>LXEUNITLIN</DDTEXT>
<REPTEXT>LXEUNITLIN</REPTEXT>
<SCRTEXT_S>LXEUNITLIN</SCRTEXT_S>
<SCRTEXT_M>LXEUNITLIN</SCRTEXT_M>
<SCRTEXT_L>LXEUNITLIN</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>CHAR</DATATYPE>
<LENG>000255</LENG>
<OUTPUTLEN>000255</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>

25
deps/lxeunitmlt.dtel.xml vendored Normal file
View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>LXEUNITMLT</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<DOMNAME>LXEUNITLTH</DOMNAME>
<HEADLEN>38</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>20</SCRLEN2>
<SCRLEN3>38</SCRLEN3>
<DDTEXT>LXEUNITMLT</DDTEXT>
<REPTEXT>LXEUNITMLT</REPTEXT>
<SCRTEXT_S>LXEUNITMLT</SCRTEXT_S>
<SCRTEXT_M>LXEUNITMLT</SCRTEXT_M>
<SCRTEXT_L>LXEUNITMLT</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>INT4</DATATYPE>
<LENG>000010</LENG>
<OUTPUTLEN>000010</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>

25
deps/lxeuppcase.dtel.xml vendored Normal file
View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>LXEUPPCASE</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<DOMNAME>BOOLE</DOMNAME>
<HEADLEN>14</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>15</SCRLEN2>
<SCRLEN3>20</SCRLEN3>
<DDTEXT>LXEUPPCASE</DDTEXT>
<REPTEXT>LXEUPPCASE</REPTEXT>
<SCRTEXT_S>LXEUPPCASE</SCRTEXT_S>
<SCRTEXT_M>LXEUPPCASE</SCRTEXT_M>
<SCRTEXT_L>LXEUPPCASE</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<OUTPUTLEN>000001</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>

24
deps/r3state.dtel.xml vendored Normal file
View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>R3STATE</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<HEADLEN>55</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>20</SCRLEN2>
<SCRLEN3>40</SCRLEN3>
<DDTEXT>R3STATE</DDTEXT>
<REPTEXT>R3STATE</REPTEXT>
<SCRTEXT_S>R3STATE</SCRTEXT_S>
<SCRTEXT_M>R3STATE</SCRTEXT_M>
<SCRTEXT_L>R3STATE</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<OUTPUTLEN>000001</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>

1
deps/seoc.type.abap vendored
View File

@ -2,6 +2,7 @@ TYPE-POOL seoc.
CONSTANTS seoc_version_inactive TYPE n LENGTH 1 VALUE '0'.
CONSTANTS seoc_version_active TYPE n LENGTH 1 VALUE '1'.
CONSTANTS seoc_version_deleted TYPE n LENGTH 1 VALUE '2'.
CONSTANTS seoc_exposure_public TYPE n LENGTH 1 VALUE '2'.
CONSTANTS seoc_exposure_protected TYPE n LENGTH 1 VALUE '1'.

48
deps/seoclasstx.tabl.xml vendored Normal file
View File

@ -0,0 +1,48 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>SEOCLASSTX</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<DDTEXT>SEOCLASSTX</DDTEXT>
<CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>SEOCLASSTX</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<UEBERSETZ>N</UEBERSETZ>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>CLSNAME</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>SEOCLSNAME</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>LANGU</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>LANGU</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<COMPTYPE>E</COMPTYPE>
<LANGUFLAG>X</LANGUFLAG>
</DD03P>
<DD03P>
<FIELDNAME>DESCRIPT</FIELDNAME>
<ROLLNAME>SEODESCR</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<COMPTYPE>E</COMPTYPE>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

57
deps/seometarel.tabl.xml vendored Normal file
View File

@ -0,0 +1,57 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>SEOMETAREL</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<DDTEXT>SEOMETAREL</DDTEXT>
<CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>SEOMETAREL</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>CLSNAME</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>REFCLSNAME</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>VERSION</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

114
deps/sotr_headu.tabl.xml vendored Normal file
View File

@ -0,0 +1,114 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>SOTR_HEADU</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<DDTEXT>SOTR_HEADU</DDTEXT>
<CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>SOTR_HEADU</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>CONCEPT</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000064</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000032</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>PAKET</FIELDNAME>
<ROLLNAME>DEVCLASS</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<SHLPORIGIN>D</SHLPORIGIN>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>CREA_NAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000024</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000012</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CREA_TSTUT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000028</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000014</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CHAN_NAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000024</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000012</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CHAN_TSTUT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000028</INTLEN>
<DATATYPE>NUMC</DATATYPE>
<LENG>000014</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SYSTEM_ID</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000016</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000008</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OBJID_VEC</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>X</INTTYPE>
<INTLEN>000010</INTLEN>
<DATATYPE>RAW</DATATYPE>
<LENG>000010</LENG>
<MASK> RAW</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CREA_LAN</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>ALIAS_NAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000100</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000050</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

4
deps/srext.type.abap vendored Normal file
View File

@ -0,0 +1,4 @@
TYPE-POOL srext.
CONSTANTS srext_ext_class_pool TYPE c LENGTH 2 VALUE 'CP'.
CONSTANTS srext_ext_interface_pool TYPE c LENGTH 2 VALUE 'IP'.

25
deps/tcdrs.tabl.xml vendored Normal file
View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>TCDRS</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>TCDRS</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TABNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

62
deps/tddat.tabl.xml vendored Normal file
View File

@ -0,0 +1,62 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>TDDAT</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<DDTEXT>TDDAT</DDTEXT>
<CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>TDDAT</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL1</TABART>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TABNAME</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>MCLASS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>CCLASS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000028</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000014</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

24
deps/uccheck.dtel.xml vendored Normal file
View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>UCCHECK</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<HEADLEN>55</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>20</SCRLEN2>
<SCRLEN3>40</SCRLEN3>
<DDTEXT>UCCHECK</DDTEXT>
<REPTEXT>UCCHECK</REPTEXT>
<SCRTEXT_S>UCCHECK</SCRTEXT_S>
<SCRTEXT_M>UCCHECK</SCRTEXT_M>
<SCRTEXT_L>UCCHECK</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<OUTPUTLEN>000001</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>

54
deps/zabapgit.tabl.xml vendored Normal file
View File

@ -0,0 +1,54 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>ZABAPGIT</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<DDTEXT>Generated by abapGit</DDTEXT>
<CONTFLAG>L</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>ZABAPGIT</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>1</TABKAT>
<TABART>APPL1</TABART>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TYPE</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000024</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000012</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>VALUE</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000024</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000012</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>DATA_STR</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>g</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>STRG</DATATYPE>
<MASK> STRG</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

42
eslint.config.mjs Normal file
View File

@ -0,0 +1,42 @@
import js from "@eslint/js";
import globals from "globals";
export default [
js.configs.recommended,
{
"languageOptions": {
"parserOptions": {
"ecmaVersion": 2015
},
"sourceType": "script",
"globals": globals.browser,
},
"rules": {
"quotes": [
"error",
"double",
{
"avoidEscape": true
}
],
"semi": [
"error",
"always",
{
"omitLastInOneLineBlock": true
}
],
"no-console": "off",
"indent": [
"error",
2
],
"no-trailing-spaces": [
"error"
],
"no-unused-vars": [
"warn"
]
}
}
];

View File

@ -1,19 +1,16 @@
{
"license": "MIT",
"private": true,
"scripts": {
"test": "npm run eslint && npm run abaplint",
"merge": "abapmerge -f src/zabapgit.prog.abap -c zabapgit_standalone -o zabapgit.abap",
"merge.ci": "cp zabapgit.abap ci/zabapgit_standalone.prog.abap && cd ci && abaplint --format codeframe && cd ..",
"build": "rm -rf output && abap_transpile test/abap_transpile.json",
"unit": "npm run build && echo RUNNING && node output/index.mjs",
"coverage": "npm run unit && c8 node output/index.mjs && c8 report --reporter=html",
"integration": "rm -rf output && cp test/abap_transpile.json test/abap_transpile_int.json && sed -i 's/zcl_abapgit_auth/zcl_abapgit_integration_git/g' test/abap_transpile_int.json && abap_transpile test/abap_transpile_int.json && echo RUNNING && node output/index.mjs",
"build": "rm -rf output && abap_transpile test/abap_transpile.json && cp -f src/ui/zabapgit_icon_font.w3mi.data.woff output/",
"unit": "npm run build && echo RUNNING && node output/index.mjs --skip-critical",
"coverage": "npm run unit && c8 node output/index.mjs --skip-critical && c8 report --reporter=html",
"integration": "npm run build && echo RUNNING && node output/index.mjs --only-critical",
"abaplint": "abaplint --format codeframe",
"eslint": "eslint src",
"docker-build": "docker-compose -f test/docker-compose.yml build",
"docker-up": "docker-compose -f test/docker-compose.yml up",
"docker-unit": "docker-compose -f test/docker-compose.yml run --workdir=\"/home/node/abapGit\" abapgit npm run-script unit",
"docker-down": "docker-compose -f test/docker-compose.yml down"
"eslint": "eslint src"
},
"repository": {
"type": "git",
@ -26,12 +23,14 @@
]
},
"devDependencies": {
"@abaplint/cli": "^2.100.2",
"@abaplint/database-sqlite": "^2.7.0",
"@abaplint/runtime": "^2.7.0",
"@abaplint/transpiler-cli": "^2.7.0",
"abapmerge": "^0.15.0",
"c8": "^7.13.0",
"eslint": "^8.40.0"
"@abaplint/cli": "^2.113.110",
"@abaplint/database-sqlite": "^2.10.24",
"@abaplint/runtime": "^2.10.44",
"express": "^4.21.2",
"@abaplint/transpiler-cli": "^2.10.44",
"globals": "^16.0.0",
"abapmerge": "^0.16.6",
"c8": "^10.1.3",
"eslint": "^9.25.1"
}
}

View File

@ -24,16 +24,14 @@ CLASS zcl_abapgit_apack_helper DEFINITION
VALUE(rs_file) TYPE zif_abapgit_git_definitions=>ty_file
RAISING
zcx_abapgit_exception .
CLASS-METHODS get_manifest_implementations
RETURNING
VALUE(rt_manifest_implementations) TYPE zif_abapgit_apack_definitions=>ty_manifest_declarations.
PROTECTED SECTION.
PRIVATE SECTION.
TYPES:
BEGIN OF ty_manifest_declaration,
clsname TYPE seometarel-clsname,
devclass TYPE devclass,
END OF ty_manifest_declaration .
TYPES:
ty_manifest_declarations TYPE STANDARD TABLE OF ty_manifest_declaration WITH NON-UNIQUE DEFAULT KEY .
TYPES:
BEGIN OF ty_dependency_status,
met TYPE zif_abapgit_definitions=>ty_yes_no_partial.
@ -80,7 +78,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_APACK_HELPER IMPLEMENTATION.
CLASS zcl_abapgit_apack_helper IMPLEMENTATION.
METHOD are_dependencies_met.
@ -109,12 +107,21 @@ CLASS ZCL_ABAPGIT_APACK_HELPER IMPLEMENTATION.
METHOD dependencies_popup.
DATA: lt_met_status TYPE ty_dependency_statuses.
DATA: lt_met_status TYPE ty_dependency_statuses,
lv_answer TYPE c LENGTH 1.
lt_met_status = get_dependencies_met_status( it_dependencies ).
show_dependencies_popup( lt_met_status ).
lv_answer = zcl_abapgit_ui_factory=>get_popups( )->popup_to_confirm(
iv_titlebar = 'Warning'
iv_text_question = 'The project has unmet dependencies. Do you want to continue?' ).
IF lv_answer <> '1'.
zcx_abapgit_exception=>raise( 'Cancelling because of unmet dependencies.' ).
ENDIF.
ENDMETHOD.
@ -226,19 +233,12 @@ CLASS ZCL_ABAPGIT_APACK_HELPER IMPLEMENTATION.
METHOD get_installed_packages.
DATA: lo_apack_reader TYPE REF TO zcl_abapgit_apack_reader,
lt_manifest_implementation TYPE ty_manifest_declarations,
ls_manifest_implementation TYPE ty_manifest_declaration,
lt_manifest_implementation TYPE zif_abapgit_apack_definitions=>ty_manifest_declarations,
ls_manifest_implementation TYPE zif_abapgit_apack_definitions=>ty_manifest_declaration,
lo_manifest_provider TYPE REF TO object,
ls_descriptor TYPE zif_abapgit_apack_definitions=>ty_descriptor.
SELECT seometarel~clsname tadir~devclass FROM seometarel "#EC CI_NOORDER
INNER JOIN tadir ON seometarel~clsname = tadir~obj_name "#EC CI_BUFFJOIN
INTO TABLE lt_manifest_implementation
WHERE tadir~pgmid = 'R3TR'
AND tadir~object = 'CLAS'
AND seometarel~version = '1'
AND ( seometarel~refclsname = zif_abapgit_apack_definitions=>c_apack_interface_cust
OR seometarel~refclsname = zif_abapgit_apack_definitions=>c_apack_interface_sap ).
lt_manifest_implementation = get_manifest_implementations( ).
LOOP AT lt_manifest_implementation INTO ls_manifest_implementation.
CLEAR: lo_manifest_provider, lo_apack_reader.
@ -266,6 +266,39 @@ CLASS ZCL_ABAPGIT_APACK_HELPER IMPLEMENTATION.
ENDMETHOD.
METHOD get_manifest_implementations.
DATA lt_refclsname TYPE RANGE OF abap_classname.
DATA ls_refclsname LIKE LINE OF lt_refclsname.
ls_refclsname-sign = 'I'.
ls_refclsname-option = 'EQ'.
ls_refclsname-low = zif_abapgit_apack_definitions=>c_apack_interface_cust.
INSERT ls_refclsname INTO TABLE lt_refclsname.
ls_refclsname-sign = 'I'.
ls_refclsname-option = 'EQ'.
ls_refclsname-low = zif_abapgit_apack_definitions=>c_apack_interface_sap.
INSERT ls_refclsname INTO TABLE lt_refclsname.
ls_refclsname-sign = 'I'.
ls_refclsname-option = 'CP'.
ls_refclsname-low = zif_abapgit_apack_definitions=>c_apack_interface_nspc.
INSERT ls_refclsname INTO TABLE lt_refclsname.
" Find all classes that implement customer or SAP version of APACK interface
SELECT seometarel~clsname tadir~devclass FROM seometarel "#EC CI_NOORDER
INNER JOIN tadir ON seometarel~clsname = tadir~obj_name "#EC CI_BUFFJOIN
INTO TABLE rt_manifest_implementations
WHERE tadir~pgmid = 'R3TR'
AND tadir~object = 'CLAS'
AND seometarel~version = '1'
AND seometarel~refclsname IN lt_refclsname
ORDER BY clsname devclass ##SUBRC_OK.
ENDMETHOD.
METHOD show_dependencies_popup.
DATA: lo_alv TYPE REF TO cl_salv_table,

View File

@ -178,7 +178,7 @@ CLASS zcl_abapgit_apack_migration IMPLEMENTATION.
component_error = 4
no_access = 5
other = 6
OTHERS = 7.
OTHERS = 7 ##FM_SUBRC_OK.
CATCH cx_sy_dyn_call_param_not_found.
CALL FUNCTION 'SEO_INTERFACE_CREATE_COMPLETE'
EXPORTING

View File

@ -43,14 +43,18 @@ CLASS zcl_abapgit_apack_reader DEFINITION
METHODS constructor
IMPORTING
!iv_package_name TYPE ty_package_name .
METHODS refresh.
PROTECTED SECTION.
PRIVATE SECTION.
TYPES:
BEGIN OF ty_s_manifest_declaration,
clsname TYPE seoclsname,
devclass TYPE devclass,
END OF ty_s_manifest_declaration .
BEGIN OF ty_instance,
package TYPE ty_package_name,
instance TYPE REF TO zcl_abapgit_apack_reader,
END OF ty_instance,
ty_instances TYPE HASHED TABLE OF ty_instance WITH UNIQUE KEY package.
CLASS-DATA gt_instances TYPE ty_instances.
DATA mv_package_name TYPE ty_package_name .
DATA ms_cached_descriptor TYPE zif_abapgit_apack_definitions=>ty_descriptor .
@ -74,6 +78,7 @@ CLASS zcl_abapgit_apack_reader IMPLEMENTATION.
METHOD constructor.
ASSERT iv_package_name IS NOT INITIAL.
mv_package_name = iv_package_name.
ENDMETHOD.
@ -84,7 +89,11 @@ CLASS zcl_abapgit_apack_reader IMPLEMENTATION.
ls_my_dependency TYPE zif_abapgit_apack_definitions=>ty_dependency,
ls_descriptor TYPE zif_abapgit_apack_definitions=>ty_descriptor,
lv_descriptor_cust TYPE string,
lv_descriptor_sap TYPE string.
lv_descriptor_sap TYPE string,
lv_descriptor_nspc TYPE string,
lv_class_name TYPE abap_abstypename,
lv_empty TYPE string,
ls_namespace TYPE zif_abapgit_definitions=>ty_obj_namespace.
FIELD-SYMBOLS: <lg_descriptor> TYPE any,
<lt_dependencies> TYPE ANY TABLE,
@ -93,9 +102,20 @@ CLASS zcl_abapgit_apack_reader IMPLEMENTATION.
lv_descriptor_cust = zif_abapgit_apack_definitions=>c_apack_interface_cust && '~DESCRIPTOR'.
lv_descriptor_sap = zif_abapgit_apack_definitions=>c_apack_interface_sap && '~DESCRIPTOR'.
lv_class_name = cl_abap_classdescr=>get_class_name( io_manifest_provider ).
SPLIT lv_class_name AT '\CLASS=' INTO lv_empty lv_class_name.
ls_namespace = zcl_abapgit_factory=>get_sap_namespace( )->split_by_name( lv_class_name ).
IF ls_namespace-namespace IS NOT INITIAL.
lv_descriptor_nspc = |{ ls_namespace-namespace }{ lv_descriptor_sap }|.
ENDIF.
ASSIGN io_manifest_provider->(lv_descriptor_cust) TO <lg_descriptor>.
IF <lg_descriptor> IS NOT ASSIGNED.
ASSIGN io_manifest_provider->(lv_descriptor_sap) TO <lg_descriptor>.
IF <lg_descriptor> IS NOT ASSIGNED AND lv_descriptor_nspc IS NOT INITIAL.
ASSIGN io_manifest_provider->(lv_descriptor_nspc) TO <lg_descriptor>.
ENDIF.
ENDIF.
IF <lg_descriptor> IS ASSIGNED.
" A little more complex than a normal MOVE-CORRSPONDING
@ -117,9 +137,23 @@ CLASS zcl_abapgit_apack_reader IMPLEMENTATION.
METHOD create_instance.
CREATE OBJECT ro_manifest_reader
EXPORTING
iv_package_name = iv_package_name.
DATA ls_instance TYPE ty_instance.
" One instance per package
READ TABLE gt_instances INTO ls_instance WITH TABLE KEY package = iv_package_name.
IF sy-subrc <> 0.
ls_instance-package = iv_package_name.
CREATE OBJECT ls_instance-instance
EXPORTING
iv_package_name = iv_package_name.
INSERT ls_instance INTO TABLE gt_instances.
ENDIF.
ro_manifest_reader = ls_instance-instance.
ENDMETHOD.
@ -132,8 +166,6 @@ CLASS zcl_abapgit_apack_reader IMPLEMENTATION.
ls_data = from_xml( lv_xml ).
ro_manifest_reader = create_instance( iv_package_name ).
ro_manifest_reader = create_instance( iv_package_name ).
ro_manifest_reader->set_manifest_descriptor( ls_data ).
@ -148,6 +180,7 @@ CLASS zcl_abapgit_apack_reader IMPLEMENTATION.
ms_cached_descriptor-sem_version = zcl_abapgit_version=>conv_str_to_version( ms_cached_descriptor-version ).
LOOP AT ms_cached_descriptor-dependencies ASSIGNING <ls_dependency>.
TRANSLATE <ls_dependency>-version TO LOWER CASE.
<ls_dependency>-sem_version = zcl_abapgit_version=>conv_str_to_version( <ls_dependency>-version ).
ENDLOOP.
@ -171,27 +204,24 @@ CLASS zcl_abapgit_apack_reader IMPLEMENTATION.
METHOD get_manifest_descriptor.
DATA: lo_manifest_provider TYPE REF TO object,
ls_manifest_implementation TYPE ty_s_manifest_declaration.
lv_package TYPE devclass,
lt_packages TYPE zif_abapgit_sap_package=>ty_devclass_tt,
ls_manifest_implementation TYPE zif_abapgit_apack_definitions=>ty_manifest_declaration,
lt_manifest_implementation TYPE zif_abapgit_apack_definitions=>ty_manifest_declarations.
IF mv_is_cached IS INITIAL AND mv_package_name IS NOT INITIAL.
SELECT SINGLE seometarel~clsname tadir~devclass FROM seometarel "#EC CI_NOORDER
INNER JOIN tadir ON seometarel~clsname = tadir~obj_name "#EC CI_BUFFJOIN
INTO ls_manifest_implementation
WHERE tadir~pgmid = 'R3TR' AND
tadir~object = 'CLAS' AND
seometarel~version = '1' AND
seometarel~refclsname = zif_abapgit_apack_definitions=>c_apack_interface_cust AND
tadir~devclass = mv_package_name.
IF ls_manifest_implementation IS INITIAL.
SELECT SINGLE seometarel~clsname tadir~devclass FROM seometarel "#EC CI_NOORDER
INNER JOIN tadir ON seometarel~clsname = tadir~obj_name "#EC CI_BUFFJOIN
INTO ls_manifest_implementation
WHERE tadir~pgmid = 'R3TR' AND
tadir~object = 'CLAS' AND
seometarel~version = '1' AND
seometarel~refclsname = zif_abapgit_apack_definitions=>c_apack_interface_sap AND
tadir~devclass = mv_package_name.
ENDIF.
IF mv_is_cached IS INITIAL.
lt_packages = zcl_abapgit_factory=>get_sap_package( mv_package_name )->list_subpackages( ).
INSERT mv_package_name INTO TABLE lt_packages.
lt_manifest_implementation = zcl_abapgit_apack_helper=>get_manifest_implementations( ).
LOOP AT lt_packages INTO lv_package.
READ TABLE lt_manifest_implementation INTO ls_manifest_implementation WITH KEY devclass = lv_package.
IF sy-subrc = 0.
EXIT.
ENDIF.
ENDLOOP.
IF ls_manifest_implementation IS NOT INITIAL.
TRY.
CREATE OBJECT lo_manifest_provider TYPE (ls_manifest_implementation-clsname).
@ -217,14 +247,16 @@ CLASS zcl_abapgit_apack_reader IMPLEMENTATION.
ls_returned_manifest = get_manifest_descriptor( ).
rv_has_manifest = abap_false.
IF ls_returned_manifest IS NOT INITIAL.
rv_has_manifest = abap_true.
ENDIF.
rv_has_manifest = boolc( ls_returned_manifest IS NOT INITIAL ).
ENDMETHOD.
METHOD refresh.
CLEAR: mv_is_cached, ms_cached_descriptor.
ENDMETHOD.
METHOD set_manifest_descriptor.
mv_is_cached = abap_true.
ms_cached_descriptor = is_manifest_descriptor.

View File

@ -1,4 +1,3 @@
*"* use this source file for your ABAP unit test classes
CLASS ltcl_apack_manifest_reader DEFINITION FOR TESTING RISK LEVEL HARMLESS DURATION SHORT.
PRIVATE SECTION.
METHODS:

View File

@ -1,4 +1,3 @@
*"* use this source file for your ABAP unit test classes
CLASS ltcl_apack_manifest_writer DEFINITION FOR TESTING RISK LEVEL HARMLESS DURATION SHORT.
PRIVATE SECTION.
METHODS: the_serializator FOR TESTING RAISING cx_static_check.

View File

@ -27,13 +27,21 @@ INTERFACE zif_abapgit_apack_definitions PUBLIC .
BEGIN OF ty_descriptor.
INCLUDE TYPE ty_descriptor_wo_dependencies.
TYPES:
dependencies TYPE ty_dependencies,
dependencies TYPE ty_dependencies,
END OF ty_descriptor,
ty_descriptors TYPE STANDARD TABLE OF ty_descriptor WITH NON-UNIQUE DEFAULT KEY.
TYPES:
BEGIN OF ty_manifest_declaration,
clsname TYPE seoclsname,
devclass TYPE devclass,
END OF ty_manifest_declaration,
ty_manifest_declarations TYPE STANDARD TABLE OF ty_manifest_declaration WITH DEFAULT KEY.
CONSTANTS c_dot_apack_manifest TYPE string VALUE '.apack-manifest.xml' ##NO_TEXT.
CONSTANTS c_repository_type_abapgit TYPE ty_repository_type VALUE 'abapGit' ##NO_TEXT.
CONSTANTS c_apack_interface_sap TYPE seoclsname VALUE 'IF_APACK_MANIFEST' ##NO_TEXT.
CONSTANTS c_apack_interface_cust TYPE seoclsname VALUE 'ZIF_APACK_MANIFEST' ##NO_TEXT.
CONSTANTS c_apack_interface_nspc TYPE seoclsname VALUE '/*/IF_APACK_MANIFEST' ##NO_TEXT.
ENDINTERFACE.

View File

@ -14,49 +14,115 @@ CLASS zcl_abapgit_background DEFINITION
CLASS-METHODS run
RAISING
zcx_abapgit_exception .
CLASS-METHODS list_methods
RETURNING VALUE(rt_methods) TYPE ty_methods.
CLASS-METHODS enqueue
RAISING
zcx_abapgit_exception.
CLASS-METHODS dequeue.
PROTECTED SECTION.
PRIVATE SECTION.
CONSTANTS c_enq_type TYPE c LENGTH 12 VALUE 'BACKGROUND'.
CONSTANTS c_interface TYPE seoclskey VALUE 'ZIF_ABAPGIT_BACKGROUND'.
ENDCLASS.
CLASS ZCL_ABAPGIT_BACKGROUND IMPLEMENTATION.
CLASS zcl_abapgit_background IMPLEMENTATION.
METHOD dequeue.
CALL FUNCTION 'DEQUEUE_EZABAPGIT'
EXPORTING
type = c_enq_type.
ENDMETHOD.
METHOD enqueue.
CALL FUNCTION 'ENQUEUE_EZABAPGIT'
EXPORTING
mode_zabapgit = 'E'
type = c_enq_type
_scope = '3'
EXCEPTIONS
foreign_lock = 1
system_failure = 2
OTHERS = 3.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise_t100( ).
ENDIF.
ENDMETHOD.
METHOD list_methods.
DATA: ls_method LIKE LINE OF rt_methods,
ls_key TYPE seoclskey,
lt_implementing TYPE seor_implementing_keys,
ls_implementing LIKE LINE OF lt_implementing.
DATA: ls_method LIKE LINE OF rt_methods,
lt_implementing TYPE seor_implementing_keys,
ls_implementing LIKE LINE OF lt_implementing,
lt_interf TYPE abap_intfdescr_tab,
lt_local_classes TYPE STANDARD TABLE OF scompo,
lv_classname TYPE string,
lr_typedescr TYPE REF TO cl_abap_typedescr,
lr_typedescr_class TYPE REF TO cl_abap_classdescr.
FIELD-SYMBOLS: <ls_method> LIKE LINE OF rt_methods.
FIELD-SYMBOLS: <ls_local_class> LIKE LINE OF lt_local_classes,
<ls_method> LIKE LINE OF rt_methods.
IF zcl_abapgit_factory=>get_environment( )->is_merged( ) = abap_true.
" Assume the standalone version runs.
CALL FUNCTION 'WB_TREE_GET_OBJECTS'
EXPORTING
include = ' '
otype = 'L'
program = sy-repid
TABLES
olist = lt_local_classes.
* in order to handle local classes in the compiled report
ls_method-class = 'ZCL_ABAPGIT_BACKGROUND_PULL'.
INSERT ls_method INTO TABLE rt_methods.
ls_method-class = 'ZCL_ABAPGIT_BACKGROUND_PUSH_AU'.
INSERT ls_method INTO TABLE rt_methods.
ls_method-class = 'ZCL_ABAPGIT_BACKGROUND_PUSH_FI'.
INSERT ls_method INTO TABLE rt_methods.
LOOP AT lt_local_classes ASSIGNING <ls_local_class>.
lv_classname = |\\PROGRAM={ sy-repid }\\CLASS={ <ls_local_class>-name }|.
cl_abap_typedescr=>describe_by_name(
EXPORTING
p_name = lv_classname
RECEIVING
p_descr_ref = lr_typedescr
EXCEPTIONS
type_not_found = 1
OTHERS = 2 ).
ls_key-clsname = 'ZIF_ABAPGIT_BACKGROUND'.
IF sy-subrc = 0 AND lr_typedescr IS BOUND.
lr_typedescr_class ?= lr_typedescr.
IF lr_typedescr_class IS BOUND.
lt_interf = lr_typedescr_class->interfaces.
READ TABLE lt_interf WITH TABLE KEY name = c_interface TRANSPORTING NO FIELDS.
IF sy-subrc = 0.
ls_method-class = <ls_local_class>-name.
INSERT ls_method INTO TABLE rt_methods.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
CALL FUNCTION 'SEO_INTERFACE_IMPLEM_GET_ALL'
EXPORTING
intkey = ls_key
IMPORTING
impkeys = lt_implementing
EXCEPTIONS
not_existing = 1
OTHERS = 2 ##FM_SUBRC_OK.
LOOP AT lt_implementing INTO ls_implementing.
ls_method-class = ls_implementing-clsname.
INSERT ls_method INTO TABLE rt_methods.
ENDLOOP.
ELSE.
" Assume the developer version runs.
CALL FUNCTION 'SEO_INTERFACE_IMPLEM_GET_ALL'
EXPORTING
intkey = c_interface
IMPORTING
impkeys = lt_implementing
EXCEPTIONS
not_existing = 1
OTHERS = 2.
IF sy-subrc = 0.
LOOP AT lt_implementing INTO ls_implementing.
ls_method-class = ls_implementing-clsname.
INSERT ls_method INTO TABLE rt_methods.
ENDLOOP.
ENDIF.
ENDIF.
LOOP AT rt_methods ASSIGNING <ls_method>.
CALL METHOD (<ls_method>-class)=>zif_abapgit_background~get_description
@ -69,64 +135,65 @@ CLASS ZCL_ABAPGIT_BACKGROUND IMPLEMENTATION.
METHOD run.
CONSTANTS: lc_enq_type TYPE c LENGTH 12 VALUE 'BACKGROUND'.
DATA: lo_per TYPE REF TO zcl_abapgit_persist_background,
lo_repo TYPE REF TO zcl_abapgit_repo_online,
lt_list TYPE zcl_abapgit_persist_background=>ty_background_keys,
li_background TYPE REF TO zif_abapgit_background,
li_log TYPE REF TO zif_abapgit_log,
lx_error TYPE REF TO zcx_abapgit_exception,
lv_repo_name TYPE string.
DATA:
li_repo TYPE REF TO zif_abapgit_repo,
li_repo_online TYPE REF TO zif_abapgit_repo_online,
lt_list TYPE zif_abapgit_persist_background=>ty_background_keys,
li_background TYPE REF TO zif_abapgit_background,
li_log TYPE REF TO zif_abapgit_log,
lx_error TYPE REF TO zcx_abapgit_exception,
lv_repo_name TYPE string.
FIELD-SYMBOLS: <ls_list> LIKE LINE OF lt_list.
TRY.
enqueue( ).
CATCH zcx_abapgit_exception.
WRITE: / 'Another instance of the program is already running'.
RETURN.
ENDTRY.
CALL FUNCTION 'ENQUEUE_EZABAPGIT'
EXPORTING
mode_zabapgit = 'E'
type = lc_enq_type
_scope = '3'
EXCEPTIONS
foreign_lock = 1
system_failure = 2
OTHERS = 3.
IF sy-subrc <> 0.
WRITE: / 'Another intance of the program is already running'.
RETURN.
ENDIF.
CREATE OBJECT lo_per.
lt_list = lo_per->list( ).
lt_list = zcl_abapgit_persist_factory=>get_background( )->list( ).
WRITE: / 'Background mode'.
LOOP AT lt_list ASSIGNING <ls_list>.
CREATE OBJECT li_log TYPE zcl_abapgit_log.
TRY.
lo_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( <ls_list>-key ).
lv_repo_name = lo_repo->get_name( ).
li_repo = zcl_abapgit_repo_srv=>get_instance( )->get( <ls_list>-key ).
li_repo_online ?= li_repo.
lv_repo_name = li_repo->get_name( ).
WRITE: / <ls_list>-method, lv_repo_name.
zcl_abapgit_login_manager=>set(
iv_uri = lo_repo->get_url( )
iv_uri = li_repo_online->get_url( )
iv_username = <ls_list>-username
iv_password = <ls_list>-password ).
CREATE OBJECT li_log TYPE zcl_abapgit_log.
CREATE OBJECT li_background TYPE (<ls_list>-method).
TRY.
CREATE OBJECT li_background TYPE (<ls_list>-method).
li_background->run(
io_repo = lo_repo
ii_log = li_log
it_settings = <ls_list>-settings ).
" Clear auth buffer to allow different user/password per repository in background mode
zcl_abapgit_login_manager=>clear( ).
li_background->run(
ii_repo_online = li_repo_online
ii_log = li_log
it_settings = <ls_list>-settings ).
CATCH cx_sy_create_object_error.
li_log->add_warning( |{ <ls_list>-method } could not be executed,|
& | as it is not accessible (local/global class).| ).
ENDTRY.
" Decrease memory usage for repository already processed (but keep log)
li_repo->refresh(
iv_drop_cache = abap_true
iv_drop_log = abap_false ).
CATCH zcx_abapgit_exception INTO lx_error.
li_log->add_exception( lx_error ).
ENDTRY.
" Clear auth buffer to allow different user/password per repository in background mode
zcl_abapgit_login_manager=>clear( ).
zcl_abapgit_log_viewer=>write_log( li_log ).
ENDLOOP.
@ -134,9 +201,7 @@ CLASS ZCL_ABAPGIT_BACKGROUND IMPLEMENTATION.
WRITE: / 'Nothing configured'.
ENDIF.
CALL FUNCTION 'DEQUEUE_EZABAPGIT'
EXPORTING
type = lc_enq_type.
dequeue( ).
ENDMETHOD.
ENDCLASS.

View File

@ -28,19 +28,37 @@ CLASS zcl_abapgit_background_pull IMPLEMENTATION.
METHOD zif_abapgit_background~run.
DATA: ls_checks TYPE zif_abapgit_definitions=>ty_deserialize_checks.
DATA: ls_checks TYPE zif_abapgit_definitions=>ty_deserialize_checks,
lo_settings TYPE REF TO zcl_abapgit_settings,
li_repo TYPE REF TO zif_abapgit_repo,
lv_activation_setting TYPE zif_abapgit_definitions=>ty_s_user_settings-activate_wo_popup.
FIELD-SYMBOLS: <ls_overwrite> LIKE LINE OF ls_checks-overwrite.
li_repo = ii_repo_online.
ls_checks = io_repo->deserialize_checks( ).
ls_checks = li_repo->deserialize_checks( ).
LOOP AT ls_checks-overwrite ASSIGNING <ls_overwrite>.
<ls_overwrite>-decision = zif_abapgit_definitions=>c_yes.
ENDLOOP.
io_repo->deserialize( is_checks = ls_checks
lo_settings = zcl_abapgit_persist_factory=>get_settings( )->read( ).
lv_activation_setting = lo_settings->get_activate_wo_popup( ).
lo_settings->set_activate_wo_popup( abap_true ).
" pass decisions to delete
zcl_abapgit_services_repo=>delete_unnecessary_objects(
ii_repo = li_repo
is_checks = ls_checks
ii_log = ii_log ).
li_repo->deserialize( is_checks = ls_checks
ii_log = ii_log ).
lo_settings->set_activate_wo_popup( lv_activation_setting ).
ENDMETHOD.
ENDCLASS.

View File

@ -17,7 +17,7 @@ CLASS zcl_abapgit_background_push_au DEFINITION
VALUE(rv_comment) TYPE string .
METHODS push_auto
IMPORTING
!io_repo TYPE REF TO zcl_abapgit_repo_online
!ii_repo_online TYPE REF TO zif_abapgit_repo_online
RAISING
zcx_abapgit_exception .
METHODS determine_user_details
@ -27,8 +27,8 @@ CLASS zcl_abapgit_background_push_au DEFINITION
VALUE(rs_user) TYPE zif_abapgit_git_definitions=>ty_git_user .
METHODS push_deletions
IMPORTING
!io_repo TYPE REF TO zcl_abapgit_repo_online
!is_files TYPE zif_abapgit_definitions=>ty_stage_files
!ii_repo_online TYPE REF TO zif_abapgit_repo_online
!is_files TYPE zif_abapgit_definitions=>ty_stage_files
RAISING
zcx_abapgit_exception .
PRIVATE SECTION.
@ -69,12 +69,12 @@ CLASS zcl_abapgit_background_push_au IMPLEMENTATION.
METHOD determine_user_details.
DATA: lo_user_record TYPE REF TO zcl_abapgit_user_record.
DATA li_user_record TYPE REF TO zif_abapgit_user_record.
lo_user_record = zcl_abapgit_user_record=>get_instance( iv_changed_by ).
rs_user-name = lo_user_record->get_name( ).
rs_user-email = lo_user_record->get_email( ).
li_user_record = zcl_abapgit_env_factory=>get_user_record( ).
rs_user-name = li_user_record->get_name( iv_changed_by ).
rs_user-email = li_user_record->get_email( iv_changed_by ).
* If no email, fall back to localhost/default email
IF rs_user-email IS INITIAL.
@ -110,7 +110,7 @@ CLASS zcl_abapgit_background_push_au IMPLEMENTATION.
<ls_local> LIKE LINE OF ls_files-local.
ls_files = zcl_abapgit_factory=>get_stage_logic( )->get( io_repo ).
ls_files = zcl_abapgit_stage_logic=>get_stage_logic( )->get( ii_repo_online ).
LOOP AT ls_files-local ASSIGNING <ls_local>.
lv_changed_by = zcl_abapgit_objects=>changed_by(
@ -172,13 +172,13 @@ CLASS zcl_abapgit_background_push_au IMPLEMENTATION.
ls_comment-comment = build_comment( ls_user_files ).
io_repo->push( is_comment = ls_comment
io_stage = lo_stage ).
ii_repo_online->push( is_comment = ls_comment
io_stage = lo_stage ).
ENDLOOP.
IF lines( ls_files-remote ) > 0.
push_deletions( io_repo = io_repo
is_files = ls_files ).
push_deletions( ii_repo_online = ii_repo_online
is_files = ls_files ).
ENDIF.
ENDMETHOD.
@ -212,8 +212,8 @@ CLASS zcl_abapgit_background_push_au IMPLEMENTATION.
ls_comment-committer-name = 'Deletion'.
ls_comment-committer-email = 'deletion@localhost'.
io_repo->push( is_comment = ls_comment
io_stage = lo_stage ).
ii_repo_online->push( is_comment = ls_comment
io_stage = lo_stage ).
ENDMETHOD.
@ -237,14 +237,14 @@ CLASS zcl_abapgit_background_push_au IMPLEMENTATION.
DATA: ls_files TYPE zif_abapgit_definitions=>ty_stage_files.
mi_log = ii_log.
ls_files = zcl_abapgit_factory=>get_stage_logic( )->get( io_repo ).
ls_files = zcl_abapgit_stage_logic=>get_stage_logic( )->get( ii_repo_online ).
IF lines( ls_files-local ) = 0 AND lines( ls_files-remote ) = 0.
ii_log->add_info( 'Nothing to stage' ).
RETURN.
ENDIF.
push_auto( io_repo ).
push_auto( ii_repo_online ).
ENDMETHOD.
ENDCLASS.

View File

@ -22,9 +22,9 @@ CLASS zcl_abapgit_background_push_fi DEFINITION
VALUE(rv_comment) TYPE string .
METHODS push_fixed
IMPORTING
!io_repo TYPE REF TO zcl_abapgit_repo_online
!iv_name TYPE string
!iv_email TYPE string
!ii_repo_online TYPE REF TO zif_abapgit_repo_online
!iv_name TYPE string
!iv_email TYPE string
RAISING
zcx_abapgit_exception .
PRIVATE SECTION.
@ -73,7 +73,7 @@ CLASS zcl_abapgit_background_push_fi IMPLEMENTATION.
<ls_remote> LIKE LINE OF ls_files-remote.
ls_files = zcl_abapgit_factory=>get_stage_logic( )->get( io_repo ).
ls_files = zcl_abapgit_stage_logic=>get_stage_logic( )->get( ii_repo_online ).
ASSERT lines( ls_files-local ) > 0
OR lines( ls_files-remote ) > 0.
@ -99,8 +99,8 @@ CLASS zcl_abapgit_background_push_fi IMPLEMENTATION.
ls_comment-committer-email = iv_email.
ls_comment-comment = build_comment( ls_files ).
io_repo->push( is_comment = ls_comment
io_stage = lo_stage ).
ii_repo_online->push( is_comment = ls_comment
io_stage = lo_stage ).
ENDMETHOD.
@ -142,7 +142,7 @@ CLASS zcl_abapgit_background_push_fi IMPLEMENTATION.
lv_email TYPE string.
mi_log = ii_log.
ls_files = zcl_abapgit_factory=>get_stage_logic( )->get( io_repo ).
ls_files = zcl_abapgit_stage_logic=>get_stage_logic( )->get( ii_repo_online ).
IF lines( ls_files-local ) = 0 AND lines( ls_files-remote ) = 0.
ii_log->add_info( 'Nothing to stage' ).
@ -156,9 +156,9 @@ CLASS zcl_abapgit_background_push_fi IMPLEMENTATION.
lv_email = ls_setting-value.
push_fixed(
io_repo = io_repo
iv_name = lv_name
iv_email = lv_email ).
ii_repo_online = ii_repo_online
iv_name = lv_name
iv_email = lv_email ).
ENDMETHOD.
ENDCLASS.

View File

@ -15,12 +15,12 @@ INTERFACE zif_abapgit_background
VALUE(rv_description) TYPE string .
CLASS-METHODS get_settings
CHANGING
VALUE(ct_settings) TYPE ty_settings_tt .
ct_settings TYPE ty_settings_tt .
METHODS run
IMPORTING
!io_repo TYPE REF TO zcl_abapgit_repo_online
!ii_log TYPE REF TO zif_abapgit_log
!it_settings TYPE ty_settings_tt OPTIONAL
!ii_repo_online TYPE REF TO zif_abapgit_repo_online
!ii_log TYPE REF TO zif_abapgit_log
!it_settings TYPE ty_settings_tt OPTIONAL
RAISING
zcx_abapgit_exception .
ENDINTERFACE.

View File

@ -11,6 +11,8 @@ CLASS zcl_abapgit_cts_api DEFINITION
PROTECTED SECTION.
PRIVATE SECTION.
DATA mv_confirm_transp_msgs_called TYPE abap_bool.
"! Returns the transport request / task the object is currently locked in
"! @parameter iv_program_id | Program ID
"! @parameter iv_object_type | Object type
@ -19,7 +21,7 @@ CLASS zcl_abapgit_cts_api DEFINITION
"! @raising zcx_abapgit_exception | Object is not locked in a transport
METHODS get_current_transport_for_obj
IMPORTING
!iv_program_id TYPE pgmid DEFAULT 'R3TR'
!iv_program_id TYPE tadir-pgmid DEFAULT 'R3TR'
!iv_object_type TYPE trobjtype
!iv_object_name TYPE sobj_name
RETURNING
@ -34,7 +36,7 @@ CLASS zcl_abapgit_cts_api DEFINITION
"! @raising zcx_abapgit_exception | Object is not locked in a transport
METHODS get_current_transport_from_db
IMPORTING
!iv_program_id TYPE pgmid DEFAULT 'R3TR'
!iv_program_id TYPE tadir-pgmid DEFAULT 'R3TR'
!iv_object_type TYPE trobjtype
!iv_object_name TYPE sobj_name
RETURNING
@ -49,7 +51,7 @@ CLASS zcl_abapgit_cts_api DEFINITION
"! @raising zcx_abapgit_exception | Object type is not lockable
METHODS is_object_locked_in_transport
IMPORTING
!iv_program_id TYPE pgmid DEFAULT 'R3TR'
!iv_program_id TYPE tadir-pgmid DEFAULT 'R3TR'
!iv_object_type TYPE trobjtype
!iv_object_name TYPE sobj_name
RETURNING
@ -62,7 +64,7 @@ CLASS zcl_abapgit_cts_api DEFINITION
"! @parameter rv_lockable | Lockable
METHODS is_object_type_lockable
IMPORTING
!iv_program_id TYPE pgmid DEFAULT 'R3TR'
!iv_program_id TYPE tadir-pgmid DEFAULT 'R3TR'
!iv_object_type TYPE trobjtype
RETURNING
VALUE(rv_lockable) TYPE abap_bool .
@ -72,7 +74,7 @@ CLASS zcl_abapgit_cts_api DEFINITION
"! @parameter rv_transportable | Transportable
METHODS is_object_type_transportable
IMPORTING
!iv_program_id TYPE pgmid DEFAULT 'R3TR'
!iv_program_id TYPE tadir-pgmid DEFAULT 'R3TR'
!iv_object_type TYPE trobjtype
RETURNING
VALUE(rv_transportable) TYPE abap_bool .
@ -87,6 +89,9 @@ CLASS zcl_abapgit_cts_api IMPLEMENTATION.
DATA: lv_object_lockable TYPE abap_bool,
lv_locked TYPE abap_bool,
lv_transport_request TYPE trkorr,
ls_tlock TYPE tlock,
lt_tlock TYPE STANDARD TABLE OF tlock WITH DEFAULT KEY,
lt_transports TYPE STANDARD TABLE OF trkorr WITH DEFAULT KEY,
lv_task TYPE trkorr,
lv_tr_object_name TYPE trobj_name.
@ -102,6 +107,8 @@ CLASS zcl_abapgit_cts_api IMPLEMENTATION.
we_locked = lv_locked
we_lock_order = lv_transport_request
we_lock_task = lv_task
TABLES
wt_tlock = lt_tlock
EXCEPTIONS
empty_key = 1
no_systemname = 2
@ -120,7 +127,15 @@ CLASS zcl_abapgit_cts_api IMPLEMENTATION.
zcx_abapgit_exception=>raise( |Object type { iv_program_id }-{ iv_object_type } not lockable| ).
ENDIF.
rv_transport = lv_transport_request.
LOOP AT lt_tlock INTO ls_tlock.
COLLECT ls_tlock-trkorr INTO lt_transports.
ENDLOOP.
IF lines( lt_transports ) = 1.
rv_transport = lv_transport_request.
ELSE.
rv_transport = zif_abapgit_definitions=>c_multiple_transports.
ENDIF.
ENDMETHOD.
@ -207,7 +222,133 @@ CLASS zcl_abapgit_cts_api IMPLEMENTATION.
IMPORTING
pe_result = lv_type_check_result.
rv_transportable = boolc( lv_type_check_result CA 'RTL' ).
rv_transportable = boolc( lv_type_check_result CA 'RTL' OR iv_object_type = 'TABU' ).
ENDMETHOD.
METHOD zif_abapgit_cts_api~change_transport_type.
DATA:
ls_request_header TYPE trwbo_request_header,
lt_request_headers TYPE trwbo_request_headers.
CALL FUNCTION 'ENQUEUE_E_TRKORR'
EXPORTING
trkorr = iv_transport_request
EXCEPTIONS
foreign_lock = 1
system_failure = 2
OTHERS = 3.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise_t100( ).
ENDIF.
CALL FUNCTION 'TR_READ_REQUEST_WITH_TASKS'
EXPORTING
iv_trkorr = iv_transport_request
IMPORTING
et_request_headers = lt_request_headers
EXCEPTIONS
invalid_input = 1
OTHERS = 2.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise_t100( ).
ENDIF.
LOOP AT lt_request_headers INTO ls_request_header WHERE trfunction = iv_transport_type_from.
CALL FUNCTION 'TRINT_READ_REQUEST_HEADER'
EXPORTING
iv_read_e070 = abap_true
iv_read_e070c = abap_true
CHANGING
cs_request = ls_request_header
EXCEPTIONS
empty_trkorr = 1
not_exist_e070 = 2
OTHERS = 3.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise_t100( ).
ENDIF.
CALL FUNCTION 'TRINT_CHANGE_TRFUNCTION'
EXPORTING
iv_new_trfunction = iv_transport_type_to
CHANGING
cs_request_header = ls_request_header
EXCEPTIONS
action_aborted_by_user = 1
change_not_allowed = 2
db_access_error = 3
OTHERS = 4.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise_t100( ).
ENDIF.
ENDLOOP.
CALL FUNCTION 'DEQUEUE_E_TRKORR'
EXPORTING
trkorr = iv_transport_request.
ENDMETHOD.
METHOD zif_abapgit_cts_api~confirm_transport_messages.
TYPES: BEGIN OF ty_s_message,
id TYPE symsgid,
ty TYPE symsgty,
no TYPE symsgno,
v1 TYPE symsgv,
v2 TYPE symsgv,
v3 TYPE symsgv,
v4 TYPE symsgv,
END OF ty_s_message.
DATA ls_message TYPE ty_s_message.
FIELD-SYMBOLS: <lt_confirmed_messages> TYPE STANDARD TABLE.
IF mv_confirm_transp_msgs_called = abap_true.
RETURN.
ENDIF.
" remember the call to avoid duplicates in GT_CONFIRMED_MESSAGES
mv_confirm_transp_msgs_called = abap_true.
" Auto-confirm certain messages (requires SAP Note 1609940)
PERFORM dummy IN PROGRAM saplstrd IF FOUND. "load function group STRD once into memory
ASSIGN ('(SAPLSTRD)GT_CONFIRMED_MESSAGES') TO <lt_confirmed_messages>.
IF sy-subrc <> 0.
RETURN.
ENDIF.
" Object can only be created in package of namespace
ls_message-id = 'TR'.
ls_message-no = '007'.
INSERT ls_message INTO TABLE <lt_confirmed_messages>.
" Original system set to "SAP"
ls_message-id = 'TR'.
ls_message-no = '013'.
INSERT ls_message INTO TABLE <lt_confirmed_messages>.
" Make repairs in foreign namespaces only if they are urgent
ls_message-id = 'TR'.
ls_message-no = '852'.
INSERT ls_message INTO TABLE <lt_confirmed_messages>.
" Make repairs in foreign namespaces only if they are urgent
ls_message-id = 'TK'.
ls_message-no = '016'.
INSERT ls_message INTO TABLE <lt_confirmed_messages>.
rv_messages_confirmed = abap_true.
ENDMETHOD.
@ -217,6 +358,9 @@ CLASS zcl_abapgit_cts_api IMPLEMENTATION.
DATA lt_table_keys TYPE STANDARD TABLE OF e071k.
DATA lv_with_dialog TYPE abap_bool.
FIELD-SYMBOLS <ls_table> LIKE LINE OF lt_tables.
FIELD-SYMBOLS <ls_table_key> LIKE LINE OF lt_table_keys.
cl_table_utilities_brf=>create_transport_entries(
EXPORTING
it_table_ins = it_table_ins
@ -232,6 +376,7 @@ CLASS zcl_abapgit_cts_api IMPLEMENTATION.
CALL FUNCTION 'TR_OBJECTS_CHECK'
TABLES
wt_ko200 = lt_tables
wt_e071k = lt_table_keys
EXCEPTIONS
cancel_edit_other_error = 1
show_only_other_error = 2
@ -244,15 +389,24 @@ CLASS zcl_abapgit_cts_api IMPLEMENTATION.
lv_with_dialog = abap_true.
ENDIF.
CALL FUNCTION 'TRINT_OBJECTS_CHECK_AND_INSERT'
READ TABLE lt_tables ASSIGNING <ls_table> INDEX 1.
ASSERT sy-subrc = 0.
LOOP AT lt_table_keys ASSIGNING <ls_table_key>.
<ls_table_key>-objfunc = <ls_table>-objfunc.
ENDLOOP.
CALL FUNCTION 'TR_OBJECT_INSERT'
EXPORTING
iv_order = iv_transport
iv_with_dialog = lv_with_dialog
CHANGING
ct_ko200 = lt_tables
ct_e071k = lt_table_keys
wi_order = iv_transport
wi_ko200 = <ls_table>
iv_no_show_option = abap_true
TABLES
wt_e071k = lt_table_keys
EXCEPTIONS
OTHERS = 1.
cancel_edit_other_error = 1
show_only_other_error = 2
OTHERS = 3.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise_t100( ).
ENDIF.
@ -265,6 +419,13 @@ CLASS zcl_abapgit_cts_api IMPLEMENTATION.
CLEAR ev_object.
CLEAR ev_obj_name.
IF iv_object = 'MESS'.
ev_object = 'MSAG'.
ev_obj_name = substring( val = iv_obj_name
len = strlen( iv_obj_name ) - 3 ).
RETURN.
ENDIF.
CALL FUNCTION 'GET_R3TR_OBJECT_FROM_LIMU_OBJ'
EXPORTING
p_limu_objtype = iv_object
@ -319,11 +480,15 @@ CLASS zcl_abapgit_cts_api IMPLEMENTATION.
IF lv_type_check_result = 'L'.
LOOP AT lt_tlock ASSIGNING <ls_tlock>
WHERE object = ls_lock_key-obj
AND hikey >= ls_lock_key-low
AND lokey <= ls_lock_key-hi. "#EC PORTABLE
lv_request = <ls_tlock>-trkorr.
EXIT.
WHERE object = ls_lock_key-obj
AND hikey >= ls_lock_key-low
AND lokey <= ls_lock_key-hi. "#EC PORTABLE
IF lv_request IS INITIAL.
lv_request = <ls_tlock>-trkorr.
ELSE.
lv_request = zif_abapgit_definitions=>c_multiple_transports.
EXIT.
ENDIF.
ENDLOOP.
ELSEIF is_object_type_transportable( <ls_item>-obj_type ) = abap_true.
lv_request = get_current_transport_from_db(
@ -399,6 +564,131 @@ CLASS zcl_abapgit_cts_api IMPLEMENTATION.
ENDMETHOD.
METHOD zif_abapgit_cts_api~list_open_requests_by_user.
TYPES: BEGIN OF ty_e070,
trkorr TYPE e070-trkorr,
trfunction TYPE e070-trfunction,
strkorr TYPE e070-strkorr,
END OF ty_e070.
DATA lt_e070 TYPE STANDARD TABLE OF ty_e070 WITH DEFAULT KEY.
* find all tasks first
SELECT trkorr trfunction strkorr
FROM e070 INTO TABLE lt_e070
WHERE as4user = sy-uname
AND trstatus = zif_abapgit_cts_api=>c_transport_status-modifiable
AND strkorr <> ''
ORDER BY PRIMARY KEY.
IF lines( lt_e070 ) > 0.
SELECT trkorr FROM e070
INTO TABLE rt_trkorr
FOR ALL ENTRIES IN lt_e070
WHERE trkorr = lt_e070-strkorr
AND trfunction = zif_abapgit_cts_api=>c_transport_type-wb_request.
ENDIF.
ENDMETHOD.
METHOD zif_abapgit_cts_api~list_r3tr_by_request.
TYPES: BEGIN OF ty_contents,
trkorr TYPE e071-trkorr,
as4pos TYPE e071-as4pos,
pgmid TYPE e071-pgmid,
object TYPE e071-object,
obj_name TYPE e071-obj_name,
END OF ty_contents.
DATA lt_tasks TYPE STANDARD TABLE OF trkorr WITH DEFAULT KEY.
DATA lt_contents TYPE STANDARD TABLE OF ty_contents WITH DEFAULT KEY.
DATA ls_contents LIKE LINE OF lt_contents.
DATA ls_list LIKE LINE OF rt_list.
SELECT trkorr FROM e070 INTO TABLE lt_tasks
WHERE strkorr = iv_request
ORDER BY PRIMARY KEY.
IF sy-subrc <> 0.
RETURN.
ENDIF.
SELECT trkorr as4pos pgmid object obj_name FROM e071
INTO TABLE lt_contents
FOR ALL ENTRIES IN lt_tasks
WHERE trkorr = lt_tasks-table_line
ORDER BY PRIMARY KEY.
IF sy-subrc <> 0.
RETURN.
ENDIF.
LOOP AT lt_contents INTO ls_contents.
CASE ls_contents-pgmid.
WHEN 'R3TR'.
ls_list-object = ls_contents-object.
ls_list-obj_name = ls_contents-obj_name.
INSERT ls_list INTO TABLE rt_list.
WHEN 'LIMU'.
TRY.
zif_abapgit_cts_api~get_r3tr_obj_for_limu_obj(
EXPORTING
iv_object = ls_contents-object
iv_obj_name = ls_contents-obj_name
IMPORTING
ev_object = ls_list-object
ev_obj_name = ls_list-obj_name ).
INSERT ls_list INTO TABLE rt_list.
CATCH zcx_abapgit_exception ##NO_HANDLER.
ENDTRY.
ENDCASE.
ENDLOOP.
SORT rt_list BY object obj_name.
DELETE ADJACENT DUPLICATES FROM rt_list COMPARING object obj_name.
ENDMETHOD.
METHOD zif_abapgit_cts_api~read.
DATA ls_request TYPE trwbo_request.
DATA ls_key LIKE LINE OF ls_request-keys.
FIELD-SYMBOLS <ls_key> LIKE LINE OF rs_request-keys.
ls_request-h-trkorr = iv_trkorr.
CALL FUNCTION 'TRINT_READ_REQUEST'
EXPORTING
iv_read_e070 = abap_true
iv_read_e07t = abap_true
iv_read_e070c = abap_true
iv_read_e070m = abap_true
iv_read_objs_keys = abap_true
iv_read_objs = abap_true
iv_read_attributes = abap_true
CHANGING
cs_request = ls_request
EXCEPTIONS
error_occured = 1
OTHERS = 2.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise_t100( ).
ENDIF.
* move to output structure
rs_request-trstatus = ls_request-h-trstatus.
LOOP AT ls_request-keys INTO ls_key.
APPEND INITIAL LINE TO rs_request-keys ASSIGNING <ls_key>.
MOVE-CORRESPONDING ls_key TO <ls_key>.
ENDLOOP.
ENDMETHOD.
METHOD zif_abapgit_cts_api~read_description.
SELECT SINGLE as4text FROM e07t
@ -415,4 +705,26 @@ CLASS zcl_abapgit_cts_api IMPLEMENTATION.
WHERE trkorr = iv_trkorr ##SUBRC_OK.
ENDMETHOD.
METHOD zif_abapgit_cts_api~validate_transport_request.
CONSTANTS:
BEGIN OF c_tr_status,
modifiable TYPE trstatus VALUE 'D',
modifiable_protected TYPE trstatus VALUE 'L',
END OF c_tr_status.
DATA ls_request TYPE zif_abapgit_cts_api=>ty_transport_data.
ls_request = zif_abapgit_cts_api~read( iv_transport_request ).
IF ls_request-trstatus <> c_tr_status-modifiable
AND ls_request-trstatus <> c_tr_status-modifiable_protected.
" Task/request &1 has already been released
MESSAGE e064(tk) WITH iv_transport_request INTO zcx_abapgit_exception=>null.
zcx_abapgit_exception=>raise_t100( ).
ENDIF.
ENDMETHOD.
ENDCLASS.

View File

@ -1,46 +1,18 @@
CLASS zcl_abapgit_default_transport DEFINITION
PUBLIC
CREATE PRIVATE .
CREATE PUBLIC .
PUBLIC SECTION.
CLASS-METHODS:
get_instance
RETURNING
VALUE(ro_instance) TYPE REF TO zcl_abapgit_default_transport
RAISING
zcx_abapgit_exception.
METHODS:
constructor
RAISING
zcx_abapgit_exception,
set
IMPORTING
iv_transport TYPE trkorr
RAISING
zcx_abapgit_exception,
reset
RAISING
zcx_abapgit_exception,
get
RETURNING
VALUE(rs_default_task) TYPE e070use
RAISING
zcx_abapgit_exception .
INTERFACES zif_abapgit_default_transport.
METHODS constructor.
PROTECTED SECTION.
PRIVATE SECTION.
CLASS-DATA go_instance TYPE REF TO zcl_abapgit_default_transport .
DATA mv_is_set_by_abapgit TYPE abap_bool .
DATA ms_save TYPE e070use .
METHODS store
RAISING
zcx_abapgit_exception .
METHODS store.
METHODS restore
RAISING
zcx_abapgit_exception .
@ -88,64 +60,6 @@ CLASS zcl_abapgit_default_transport IMPLEMENTATION.
ENDMETHOD.
METHOD get.
DATA: lt_e070use TYPE STANDARD TABLE OF e070use.
CALL FUNCTION 'TR_TASK_GET'
TABLES
tt_e070use = lt_e070use
EXCEPTIONS
invalid_username = 1
invalid_category = 2
invalid_client = 3
OTHERS = 4.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise_t100( ).
ENDIF.
READ TABLE lt_e070use INTO rs_default_task
INDEX 1.
ENDMETHOD.
METHOD get_instance.
IF go_instance IS NOT BOUND.
CREATE OBJECT go_instance.
ENDIF.
ro_instance = go_instance.
ENDMETHOD.
METHOD reset.
DATA: ls_default_task TYPE e070use.
IF mv_is_set_by_abapgit = abap_false.
" if the default transport request task isn't set
" by us there is nothing to do.
RETURN.
ENDIF.
CLEAR mv_is_set_by_abapgit.
ls_default_task = get( ).
IF ls_default_task IS NOT INITIAL.
clear( ls_default_task ).
ENDIF.
restore( ).
ENDMETHOD.
METHOD restore.
IF ms_save IS INITIAL.
@ -173,29 +87,6 @@ CLASS zcl_abapgit_default_transport IMPLEMENTATION.
ENDMETHOD.
METHOD set.
" checks whether object changes of the package are rerorded in transport
" requests. If true then we set the default task, so that no annoying
" transport request popups are shown while deserializing.
IF mv_is_set_by_abapgit = abap_true.
" the default transport request task is already set by us
" -> no reason to do it again.
RETURN.
ENDIF.
IF iv_transport IS INITIAL.
zcx_abapgit_exception=>raise( |No transport request was supplied| ).
ENDIF.
set_internal( iv_transport ).
mv_is_set_by_abapgit = abap_true.
ENDMETHOD.
METHOD set_internal.
CALL FUNCTION 'TR_TASK_SET'
@ -220,7 +111,84 @@ CLASS zcl_abapgit_default_transport IMPLEMENTATION.
METHOD store.
ms_save = get( ).
TRY.
ms_save = zif_abapgit_default_transport~get( ).
CATCH zcx_abapgit_exception.
CLEAR ms_save.
ENDTRY.
ENDMETHOD.
METHOD zif_abapgit_default_transport~get.
DATA lt_e070use TYPE STANDARD TABLE OF e070use WITH DEFAULT KEY.
DATA ls_line LIKE LINE OF lt_e070use.
CALL FUNCTION 'TR_TASK_GET'
TABLES
tt_e070use = lt_e070use
EXCEPTIONS
invalid_username = 1
invalid_category = 2
invalid_client = 3
OTHERS = 4.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise_t100( ).
ENDIF.
READ TABLE lt_e070use INTO ls_line INDEX 1.
IF sy-subrc = 0.
MOVE-CORRESPONDING ls_line TO rs_default_task.
ENDIF.
ENDMETHOD.
METHOD zif_abapgit_default_transport~reset.
DATA: ls_default_task TYPE e070use.
IF mv_is_set_by_abapgit = abap_false.
" if the default transport request task isn't set
" by us there is nothing to do.
RETURN.
ENDIF.
CLEAR mv_is_set_by_abapgit.
ls_default_task = zif_abapgit_default_transport~get( ).
IF ls_default_task IS NOT INITIAL.
clear( ls_default_task ).
ENDIF.
restore( ).
ENDMETHOD.
METHOD zif_abapgit_default_transport~set.
" checks whether object changes of the package are reordered in transport
" requests. If true then we set the default task, so that no annoying
" transport request popups are shown while deserializing.
IF mv_is_set_by_abapgit = abap_true.
" the default transport request task is already set by us
" -> no reason to do it again.
RETURN.
ENDIF.
IF iv_transport IS INITIAL.
zcx_abapgit_exception=>raise( |No transport request was supplied| ).
ENDIF.
set_internal( iv_transport ).
mv_is_set_by_abapgit = abap_true.
ENDMETHOD.
ENDCLASS.

View File

@ -16,9 +16,10 @@ CLASS zcl_abapgit_transport DEFINITION
CLASS-METHODS to_tadir
IMPORTING
it_transport_headers TYPE trwbo_request_headers
!iv_trkorr TYPE trkorr
!iv_deleted_objects TYPE abap_bool DEFAULT abap_false
RETURNING
VALUE(rt_tadir) TYPE zif_abapgit_definitions=>ty_tadir_tt
VALUE(rt_tadir) TYPE zif_abapgit_definitions=>ty_tadir_tt
RAISING
zcx_abapgit_exception .
@ -28,25 +29,13 @@ CLASS zcl_abapgit_transport DEFINITION
RAISING
zcx_abapgit_exception .
CLASS-METHODS read
IMPORTING
!is_trkorr TYPE trwbo_request_header OPTIONAL
RETURNING
VALUE(rs_request) TYPE trwbo_request
RAISING
zcx_abapgit_exception .
CLASS-METHODS validate_transport_request
IMPORTING
iv_transport_request TYPE trkorr
RAISING
zcx_abapgit_exception.
PROTECTED SECTION.
TYPES ty_trkorr_tt TYPE STANDARD TABLE OF trkorr.
CLASS-METHODS read_requests
IMPORTING
!it_trkorr TYPE trwbo_request_headers
!it_trkorr TYPE ty_trkorr_tt
RETURNING
VALUE(rt_requests) TYPE trwbo_requests
RAISING
@ -60,9 +49,10 @@ CLASS zcl_abapgit_transport DEFINITION
zcx_abapgit_exception .
CLASS-METHODS resolve
IMPORTING
!it_requests TYPE trwbo_requests
!it_requests TYPE trwbo_requests
!iv_deleted_objects TYPE abap_bool DEFAULT abap_false
RETURNING
VALUE(rt_tadir) TYPE zif_abapgit_definitions=>ty_tadir_tt
VALUE(rt_tadir) TYPE zif_abapgit_definitions=>ty_tadir_tt
RAISING
zcx_abapgit_exception .
PRIVATE SECTION.
@ -113,7 +103,7 @@ CLASS zcl_abapgit_transport IMPLEMENTATION.
" We used TR_REQUEST_CHOICE before, but it issues its error log with
" write lists which are not compatible with abapGit.
" There we user TRINT_REQUEST_CHOICE which returns the error log
" and display the log ourselve.
" and display the log ourselves.
CALL FUNCTION 'TRINT_REQUEST_CHOICE'
EXPORTING
iv_request_types = 'FTCOK'
@ -156,7 +146,7 @@ CLASS zcl_abapgit_transport IMPLEMENTATION.
lt_objects TYPE scts_tadir,
lt_objects_all LIKE lt_objects,
ls_e071 LIKE LINE OF rt_objects,
lo_repo TYPE REF TO zcl_abapgit_repo,
li_repo TYPE REF TO zif_abapgit_repo,
lv_package TYPE zif_abapgit_persistence=>ty_repo-package,
lt_packages TYPE zif_abapgit_sap_package=>ty_devclass_tt.
@ -164,8 +154,8 @@ CLASS zcl_abapgit_transport IMPLEMENTATION.
<lv_package> TYPE devclass,
<ls_object> TYPE tadir.
lo_repo ?= zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
lv_package = lo_repo->get_package( ).
li_repo = zcl_abapgit_repo_srv=>get_instance( )->get( iv_key ).
lv_package = li_repo->get_package( ).
lt_packages = zcl_abapgit_factory=>get_sap_package( lv_package )->list_subpackages( ).
INSERT lv_package INTO TABLE lt_packages.
@ -240,39 +230,14 @@ CLASS zcl_abapgit_transport IMPLEMENTATION.
ENDMETHOD.
METHOD read.
rs_request-h-trkorr = is_trkorr-trkorr.
CALL FUNCTION 'TRINT_READ_REQUEST'
EXPORTING
iv_read_e070 = abap_true
iv_read_e07t = abap_true
iv_read_e070c = abap_true
iv_read_e070m = abap_true
iv_read_objs_keys = abap_true
iv_read_objs = abap_true
iv_read_attributes = abap_true
CHANGING
cs_request = rs_request
EXCEPTIONS
error_occured = 1
OTHERS = 2.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise_t100( ).
ENDIF.
ENDMETHOD.
METHOD read_requests.
DATA lt_requests LIKE rt_requests.
FIELD-SYMBOLS <ls_trkorr> LIKE LINE OF it_trkorr.
FIELD-SYMBOLS <lv_trkorr> LIKE LINE OF it_trkorr.
LOOP AT it_trkorr ASSIGNING <ls_trkorr>.
LOOP AT it_trkorr ASSIGNING <lv_trkorr>.
CALL FUNCTION 'TR_READ_REQUEST_WITH_TASKS'
EXPORTING
iv_trkorr = <ls_trkorr>-trkorr
iv_trkorr = <lv_trkorr>
IMPORTING
et_requests = lt_requests
EXCEPTIONS
@ -322,7 +287,7 @@ CLASS zcl_abapgit_transport IMPLEMENTATION.
iv_object = lv_object
iv_obj_name = lv_obj_name ).
IF ls_tadir-delflag IS INITIAL.
IF ls_tadir-delflag IS INITIAL OR iv_deleted_objects = abap_true.
APPEND ls_tadir TO rt_tadir.
ENDIF.
ENDLOOP.
@ -362,43 +327,20 @@ CLASS zcl_abapgit_transport IMPLEMENTATION.
METHOD to_tadir.
DATA: lt_requests TYPE trwbo_requests.
DATA lt_requests TYPE trwbo_requests.
DATA lt_trkorr TYPE ty_trkorr_tt.
IF lines( it_transport_headers ) = 0.
IF iv_trkorr IS INITIAL.
RETURN.
ENDIF.
lt_requests = read_requests( it_transport_headers ).
rt_tadir = resolve( lt_requests ).
ENDMETHOD.
INSERT iv_trkorr INTO TABLE lt_trkorr.
METHOD validate_transport_request.
CONSTANTS:
BEGIN OF c_tr_status,
modifiable TYPE trstatus VALUE 'D',
modifiable_protected TYPE trstatus VALUE 'L',
release_started TYPE trstatus VALUE 'O',
released TYPE trstatus VALUE 'R',
released_with_import_protect TYPE trstatus VALUE 'N', " Released (with Import Protection for Repaired Objects)
END OF c_tr_status.
DATA:
ls_trkorr TYPE trwbo_request_header,
ls_request TYPE trwbo_request.
ls_trkorr-trkorr = iv_transport_request.
ls_request = read( ls_trkorr ).
IF ls_request-h-trstatus <> c_tr_status-modifiable
AND ls_request-h-trstatus <> c_tr_status-modifiable_protected.
" Task/request &1 has already been released
MESSAGE e064(tk) WITH iv_transport_request INTO zcx_abapgit_exception=>null.
zcx_abapgit_exception=>raise_t100( ).
ENDIF.
lt_requests = read_requests( lt_trkorr ).
rt_tadir = resolve(
it_requests = lt_requests
iv_deleted_objects = iv_deleted_objects ).
ENDMETHOD.
@ -410,13 +352,17 @@ CLASS zcl_abapgit_transport IMPLEMENTATION.
lv_package TYPE devclass,
lo_dot_abapgit TYPE REF TO zcl_abapgit_dot_abapgit,
ls_local_settings TYPE zif_abapgit_persistence=>ty_repo-local_settings,
lt_trkorr TYPE trwbo_request_headers.
lt_trkorr TYPE ty_trkorr_tt,
lv_trkorr TYPE trkorr.
IF is_trkorr IS SUPPLIED.
APPEND is_trkorr TO lt_trkorr.
APPEND is_trkorr-trkorr TO lt_trkorr.
ELSE.
lt_trkorr = zcl_abapgit_ui_factory=>get_popups( )->popup_to_select_transports( ).
lv_trkorr = zcl_abapgit_ui_factory=>get_popups( )->popup_to_select_transport( ).
IF lv_trkorr IS NOT INITIAL.
APPEND lv_trkorr TO lt_trkorr.
ENDIF.
ENDIF.
IF lines( lt_trkorr ) = 0.

View File

@ -7,7 +7,7 @@ CLASS zcl_abapgit_transport_2_branch DEFINITION
METHODS create
IMPORTING
!io_repository TYPE REF TO zcl_abapgit_repo_online
!ii_repo_online TYPE REF TO zif_abapgit_repo_online
!is_transport_to_branch TYPE zif_abapgit_definitions=>ty_transport_to_branch
!it_transport_objects TYPE zif_abapgit_definitions=>ty_tadir_tt
RAISING
@ -32,7 +32,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_TRANSPORT_2_BRANCH IMPLEMENTATION.
CLASS zcl_abapgit_transport_2_branch IMPLEMENTATION.
METHOD create.
@ -46,13 +46,13 @@ CLASS ZCL_ABAPGIT_TRANSPORT_2_BRANCH IMPLEMENTATION.
lv_branch_name = zcl_abapgit_git_branch_list=>complete_heads_branch_name(
zcl_abapgit_git_branch_list=>normalize_branch_name( is_transport_to_branch-branch_name ) ).
io_repository->create_branch( lv_branch_name ).
ii_repo_online->create_branch( lv_branch_name ).
CREATE OBJECT lo_stage.
ls_stage_objects = zcl_abapgit_factory=>get_stage_logic( )->get( io_repository ).
ls_stage_objects = zcl_abapgit_stage_logic=>get_stage_logic( )->get( ii_repo_online ).
lt_object_statuses = io_repository->status( ).
lt_object_statuses = zcl_abapgit_repo_status=>calculate( ii_repo_online ).
stage_transport_objects(
it_transport_objects = it_transport_objects
@ -62,8 +62,8 @@ CLASS ZCL_ABAPGIT_TRANSPORT_2_BRANCH IMPLEMENTATION.
ls_comment = generate_commit_message( is_transport_to_branch ).
io_repository->push( is_comment = ls_comment
io_stage = lo_stage ).
ii_repo_online->push( is_comment = ls_comment
io_stage = lo_stage ).
ENDMETHOD.

View File

@ -53,7 +53,7 @@ CLASS zcl_abapgit_transport_mass IMPLEMENTATION.
lcl_gui=>open_folder_frontend( lo_transport_zipper->get_folder( ) ).
ELSE.
* No data found for the provided selection criterias
* No data found for the provided selection criteria
zcx_abapgit_exception=>raise( 'No transport requests selected' ).
ENDIF.

View File

@ -13,10 +13,6 @@ CLASS lcl_gui DEFINITION FINAL.
CLASS-METHODS select_tr_requests
RETURNING
VALUE(rt_trkorr) TYPE trwbo_request_headers.
PRIVATE SECTION.
CLASS-DATA gv_last_folder TYPE string.
ENDCLASS.
CLASS lcl_gui IMPLEMENTATION.
@ -32,13 +28,9 @@ CLASS lcl_gui IMPLEMENTATION.
lo_fe_serv->directory_browse(
EXPORTING
iv_window_title = lv_title
iv_initial_folder = gv_last_folder
CHANGING
cv_selected_folder = rv_folder ).
"Store the last directory for user friendly UI
gv_last_folder = rv_folder.
ENDMETHOD.
METHOD open_folder_frontend.
@ -71,7 +63,7 @@ CLASS lcl_gui IMPLEMENTATION.
iv_via_selscreen = 'X'
is_selection = ls_selection
iv_complete_projects = space
iv_title = 'ABAPGit Transport Mass Downloader'
iv_title = 'abapGit Transport Mass Downloader'
is_popup = ls_popup
IMPORTING
et_requests = rt_trkorr
@ -165,7 +157,7 @@ CLASS lcl_transport_zipper IMPLEMENTATION.
ENDMETHOD.
METHOD does_folder_exist.
rv_folder_exist = zcl_abapgit_ui_factory=>get_frontend_services( )->directory_exist( iv_directory = iv_folder ).
rv_folder_exist = zcl_abapgit_ui_factory=>get_frontend_services( )->directory_exist( iv_folder ).
ENDMETHOD.
METHOD get_full_folder.

View File

@ -38,15 +38,17 @@ CLASS zcl_abapgit_transport_objects IMPLEMENTATION.
LOOP AT mt_transport_objects INTO ls_transport_object.
LOOP AT it_object_statuses INTO ls_object_status
" USING KEY sec_key " syntax error in 754
WHERE obj_name = ls_transport_object-obj_name
AND obj_type = ls_transport_object-object
AND NOT lstate IS INITIAL.
AND NOT lstate IS INITIAL ##PRIMKEY[SEC_KEY].
CASE ls_object_status-lstate.
WHEN zif_abapgit_definitions=>c_state-added OR zif_abapgit_definitions=>c_state-modified.
IF ls_transport_object-delflag = abap_true.
zcx_abapgit_exception=>raise( |Object { ls_transport_object-obj_name
} should be added/modified, but has deletion flag in transport| ).
zcx_abapgit_exception=>raise( |Object { ls_transport_object-object }|
&& | { ls_transport_object-obj_name } should be added/modified,|
&& | but has deletion flag in transport| ).
ENDIF.
READ TABLE is_stage_objects-local
@ -55,8 +57,8 @@ CLASS zcl_abapgit_transport_objects IMPLEMENTATION.
item-obj_type = ls_transport_object-object
file-filename = ls_object_status-filename.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise( |Object { ls_transport_object-obj_name
} not found in the local repository files| ).
zcx_abapgit_exception=>raise( |Object { ls_transport_object-object }|
&& | { ls_transport_object-obj_name } not found in the local repository files| ).
ELSE.
io_stage->add(
iv_path = ls_local_file-file-path
@ -64,16 +66,6 @@ CLASS zcl_abapgit_transport_objects IMPLEMENTATION.
iv_data = ls_local_file-file-data ).
ENDIF.
WHEN zif_abapgit_definitions=>c_state-deleted.
* SUSC, see https://github.com/abapGit/abapGit/issues/2772
IF ls_transport_object-delflag = abap_false
AND ls_transport_object-object <> 'SUSC'
AND ls_transport_object-object <> 'IWOM'
AND ls_transport_object-object <> 'IWMO'
AND ls_transport_object-object <> 'IWSG'
AND ls_transport_object-object <> 'IWSV'.
zcx_abapgit_exception=>raise( |Object { ls_transport_object-obj_name
} should be removed, but has NO deletion flag in transport| ).
ENDIF.
io_stage->rm(
iv_path = ls_object_status-path
iv_filename = ls_object_status-filename ).
@ -83,7 +75,7 @@ CLASS zcl_abapgit_transport_objects IMPLEMENTATION.
ENDLOOP.
IF sy-subrc <> 0.
" Since not all objects in a transport might be in the local repo
" i.e generated SADL objects, we don't add these objects to
" i.e. generated SADL objects, we don't add these objects to
" the stage.
ENDIF.
ENDLOOP.

View File

@ -1,4 +1,3 @@
CLASS ltcl_transport_objects DEFINITION FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
PRIVATE SECTION.
@ -10,12 +9,7 @@ CLASS ltcl_transport_objects DEFINITION FOR TESTING DURATION SHORT RISK LEVEL HA
cant_be_added_with_del_flag FOR TESTING RAISING cx_static_check,
cant_be_modified_with_del_flag FOR TESTING RAISING cx_static_check,
deleted_to_removed_files FOR TESTING RAISING cx_static_check,
should_remove_no_delflag_iwmo FOR TESTING RAISING cx_static_check,
should_remove_no_delflag_iwom FOR TESTING RAISING cx_static_check,
should_remove_no_delflag_iwsg FOR TESTING RAISING cx_static_check,
should_remove_no_delflag_iwsv FOR TESTING RAISING cx_static_check,
should_remove_no_delflag_susc FOR TESTING RAISING cx_static_check,
shouldnt_remove_no_delflag FOR TESTING RAISING cx_static_check,
should_remove_no_delflag FOR TESTING RAISING cx_static_check,
should_add_all_local_files FOR TESTING RAISING cx_static_check,
should_delete_all_related FOR TESTING RAISING cx_static_check,
setup,
@ -76,13 +70,13 @@ CLASS ltcl_transport_objects IMPLEMENTATION.
given_the_object_status(
iv_obj_name = 'CL_FOO'
iv_obj_type = 'CLAS'
iv_filename = 'CL_FOO.abap'
iv_filename = 'cl_foo.clas.abap'
iv_lstate = zif_abapgit_definitions=>c_state-added ).
ls_local_file = given_the_local_file(
iv_obj_name = 'CL_FOO'
iv_obj_type = 'CLAS'
iv_filename = 'CL_FOO.abap'
iv_filename = 'cl_foo.clas.abap'
iv_path = '/path'
iv_data = 'data' ).
@ -90,6 +84,7 @@ CLASS ltcl_transport_objects IMPLEMENTATION.
then_file_should_be_added( ls_local_file ).
ENDMETHOD.
METHOD modified_to_new_local_files.
DATA ls_local_file TYPE zif_abapgit_definitions=>ty_file_item.
given_the_transport_object(
@ -99,13 +94,13 @@ CLASS ltcl_transport_objects IMPLEMENTATION.
given_the_object_status(
iv_obj_name = 'CL_FOO'
iv_obj_type = 'CLAS'
iv_filename = 'CL_FOO.abap'
iv_filename = 'cl_foo.clas.abap'
iv_lstate = zif_abapgit_definitions=>c_state-modified ).
ls_local_file = given_the_local_file(
iv_obj_name = 'CL_FOO'
iv_obj_type = 'CLAS'
iv_filename = 'CL_FOO.abap'
iv_filename = 'cl_foo.clas.abap'
iv_path = '/path'
iv_data = 'data' ).
@ -113,6 +108,7 @@ CLASS ltcl_transport_objects IMPLEMENTATION.
then_file_should_be_added( ls_local_file ).
ENDMETHOD.
METHOD should_add_all_local_files.
"Not only .abap, but also .xml and other includes
DATA ls_abap_local_file TYPE zif_abapgit_definitions=>ty_file_item.
@ -125,26 +121,26 @@ CLASS ltcl_transport_objects IMPLEMENTATION.
given_the_object_status(
iv_obj_name = 'CL_FOO'
iv_obj_type = 'CLAS'
iv_filename = 'CL_FOO.abap'
iv_filename = 'cl_foo.clas.abap'
iv_lstate = zif_abapgit_definitions=>c_state-modified ).
given_the_object_status(
iv_obj_name = 'CL_FOO'
iv_obj_type = 'CLAS'
iv_filename = 'CL_FOO.xml'
iv_filename = 'cl_foo.clas.xml'
iv_lstate = zif_abapgit_definitions=>c_state-modified ).
ls_abap_local_file = given_the_local_file(
iv_obj_name = 'CL_FOO'
iv_obj_type = 'CLAS'
iv_filename = 'CL_FOO.abap'
iv_filename = 'cl_foo.clas.abap'
iv_path = '/path'
iv_data = 'data' ).
ls_xml_local_file = given_the_local_file(
iv_obj_name = 'CL_FOO'
iv_obj_type = 'CLAS'
iv_filename = 'CL_FOO.xml'
iv_filename = 'cl_foo.clas.xml'
iv_path = '/path'
iv_data = 'data' ).
@ -153,6 +149,7 @@ CLASS ltcl_transport_objects IMPLEMENTATION.
then_file_should_be_added( ls_abap_local_file ).
then_file_should_be_added( ls_xml_local_file ).
ENDMETHOD.
METHOD transport_not_in_repository.
given_the_transport_object(
iv_obj_name = 'CL_A_CLASS_NOT_IN_REPO'
@ -181,10 +178,10 @@ CLASS ltcl_transport_objects IMPLEMENTATION.
given_the_local_file(
iv_obj_name = 'CL_ANOTHER_LOCAL_FILE'
iv_obj_type = 'CLAS'
iv_filename = 'CL_FOO.abap'
iv_filename = 'cl_foo.clas.abap'
iv_path = '/path'
iv_data = 'data' ).
then_it_should_raise_exception( 'Object CL_FOO not found in the local repository files' ).
then_it_should_raise_exception( 'Object CLAS CL_FOO not found in the local repository files' ).
ENDMETHOD.
METHOD cant_be_added_with_del_flag.
@ -198,7 +195,7 @@ CLASS ltcl_transport_objects IMPLEMENTATION.
iv_obj_type = 'CLAS'
iv_lstate = zif_abapgit_definitions=>c_state-added ).
then_it_should_raise_exception( 'Object CL_FOO should be added/modified, but has deletion flag in transport' ).
then_it_should_raise_exception( 'Object CLAS CL_FOO should be added/modified, but has deletion flag in transport' ).
ENDMETHOD.
METHOD cant_be_modified_with_del_flag.
@ -212,7 +209,7 @@ CLASS ltcl_transport_objects IMPLEMENTATION.
iv_obj_type = 'CLAS'
iv_lstate = zif_abapgit_definitions=>c_state-modified ).
then_it_should_raise_exception( 'Object CL_FOO should be added/modified, but has deletion flag in transport' ).
then_it_should_raise_exception( 'Object CLAS CL_FOO should be added/modified, but has deletion flag in transport' ).
ENDMETHOD.
METHOD deleted_to_removed_files.
@ -224,14 +221,14 @@ CLASS ltcl_transport_objects IMPLEMENTATION.
given_the_object_status(
iv_obj_name = 'CL_FOO'
iv_obj_type = 'CLAS'
iv_filename = 'CL_FOO.abap'
iv_filename = 'cl_foo.clas.abap'
iv_path = '/a_path'
iv_lstate = zif_abapgit_definitions=>c_state-deleted ).
when_staging( ).
then_it_should_remove_at_stage(
iv_filename = 'CL_FOO.abap'
iv_filename = 'cl_foo.clas.abap'
iv_path = '/a_path' ).
ENDMETHOD.
@ -245,122 +242,42 @@ CLASS ltcl_transport_objects IMPLEMENTATION.
given_the_object_status(
iv_obj_name = 'CL_FOO'
iv_obj_type = 'CLAS'
iv_filename = 'CL_FOO.abap'
iv_filename = 'cl_foo.clas.abap'
iv_path = '/a_path'
iv_lstate = zif_abapgit_definitions=>c_state-deleted ).
given_the_object_status(
iv_obj_name = 'CL_FOO'
iv_obj_type = 'CLAS'
iv_filename = 'CL_FOO.xml'
iv_filename = 'cl_foo.clas.xml'
iv_path = '/a_path'
iv_lstate = zif_abapgit_definitions=>c_state-deleted ).
when_staging( ).
then_it_should_remove_at_stage(
iv_filename = 'CL_FOO.abap'
iv_filename = 'cl_foo.clas.abap'
iv_path = '/a_path' ).
then_it_should_remove_at_stage(
iv_filename = 'CL_FOO.xml'
iv_filename = 'cl_foo.clas.xml'
iv_path = '/a_path' ).
ENDMETHOD.
METHOD should_remove_no_delflag_iwmo.
METHOD should_remove_no_delflag.
given_the_transport_object(
iv_obj_name = 'ZFOO'
iv_obj_type = 'IWMO'
iv_delflag = abap_false ).
given_the_object_status(
iv_obj_name = 'ZFOO'
iv_obj_type = 'IWMO'
iv_filename = 'zfoo.iwmo.xml'
iv_path = '/a_path'
iv_lstate = zif_abapgit_definitions=>c_state-deleted ).
then_it_should_not_raise_excpt( ).
ENDMETHOD.
METHOD should_remove_no_delflag_iwom.
given_the_transport_object(
iv_obj_name = 'ZFOO'
iv_obj_type = 'IWOM'
iv_delflag = abap_false ).
given_the_object_status(
iv_obj_name = 'ZFOO'
iv_obj_type = 'IWOM'
iv_filename = 'zfoo.iwom.xml'
iv_path = '/a_path'
iv_lstate = zif_abapgit_definitions=>c_state-deleted ).
then_it_should_not_raise_excpt( ).
ENDMETHOD.
METHOD should_remove_no_delflag_iwsg.
given_the_transport_object(
iv_obj_name = 'ZFOO'
iv_obj_type = 'IWSG'
iv_delflag = abap_false ).
given_the_object_status(
iv_obj_name = 'ZFOO'
iv_obj_type = 'IWSG'
iv_filename = 'zfoo.iwsg.xml'
iv_path = '/a_path'
iv_lstate = zif_abapgit_definitions=>c_state-deleted ).
then_it_should_not_raise_excpt( ).
ENDMETHOD.
METHOD should_remove_no_delflag_iwsv.
given_the_transport_object(
iv_obj_name = 'ZFOO'
iv_obj_type = 'IWSV'
iv_delflag = abap_false ).
given_the_object_status(
iv_obj_name = 'ZFOO'
iv_obj_type = 'IWSV'
iv_filename = 'zfoo.iwsv.xml'
iv_path = '/a_path'
iv_lstate = zif_abapgit_definitions=>c_state-deleted ).
then_it_should_not_raise_excpt( ).
ENDMETHOD.
METHOD should_remove_no_delflag_susc.
given_the_transport_object(
iv_obj_name = 'ZFOO'
iv_obj_type = 'SUSC'
iv_delflag = abap_false ).
given_the_object_status(
iv_obj_name = 'ZFOO'
iv_obj_type = 'SUSC'
iv_filename = 'zfoo.susc.xml'
iv_path = '/a_path'
iv_lstate = zif_abapgit_definitions=>c_state-deleted ).
then_it_should_not_raise_excpt( ).
ENDMETHOD.
METHOD shouldnt_remove_no_delflag.
given_the_transport_object(
iv_obj_name = 'CL_FOO'
iv_obj_type = 'CLAS'
iv_delflag = abap_false ).
given_the_object_status(
iv_obj_name = 'CL_FOO'
iv_obj_name = 'ZFOO'
iv_obj_type = 'CLAS'
iv_filename = 'CL_FOO.abap'
iv_filename = 'zfoo.clas.xml'
iv_path = '/a_path'
iv_lstate = zif_abapgit_definitions=>c_state-deleted ).
then_it_should_raise_exception( 'Object CL_FOO should be removed, but has NO deletion flag in transport' ).
then_it_should_not_raise_excpt( ).
ENDMETHOD.
METHOD given_the_transport_object.

View File

@ -1,6 +1,36 @@
INTERFACE zif_abapgit_cts_api
PUBLIC .
TYPES:
BEGIN OF ty_transport,
obj_type TYPE tadir-object,
obj_name TYPE tadir-obj_name,
trkorr TYPE trkorr,
END OF ty_transport .
TYPES:
ty_transport_list TYPE SORTED TABLE OF ty_transport WITH NON-UNIQUE KEY obj_type obj_name .
TYPES:
ty_trkorr_tt TYPE STANDARD TABLE OF trkorr WITH DEFAULT KEY .
TYPES:
BEGIN OF ty_transport_key,
object TYPE e071k-object,
objname TYPE e071k-objname,
tabkey TYPE e071k-tabkey,
END OF ty_transport_key .
TYPES:
BEGIN OF ty_transport_data,
trstatus TYPE e070-trstatus,
keys TYPE STANDARD TABLE OF ty_transport_key WITH DEFAULT KEY,
END OF ty_transport_data .
TYPES:
BEGIN OF ty_transport_obj,
object TYPE e071-object,
obj_name TYPE e071-obj_name,
END OF ty_transport_obj .
TYPES:
ty_transport_obj_tt TYPE STANDARD TABLE OF ty_transport_obj WITH DEFAULT KEY .
CONSTANTS:
BEGIN OF c_transport_type,
wb_request TYPE c LENGTH 1 VALUE 'K', "workbench request
@ -8,28 +38,50 @@ INTERFACE zif_abapgit_cts_api
wb_task TYPE c LENGTH 1 VALUE 'S', "workbench task
cust_request TYPE c LENGTH 1 VALUE 'W', "customizing request
cust_task TYPE c LENGTH 1 VALUE 'Q', "customizing task
END OF c_transport_type.
END OF c_transport_type .
CONSTANTS:
BEGIN OF c_transport_category,
workbench TYPE c LENGTH 4 VALUE 'SYST',
customizing TYPE c LENGTH 4 VALUE 'CUST',
END OF c_transport_category.
END OF c_transport_category .
CONSTANTS:
BEGIN OF c_transport_mode,
insert TYPE c LENGTH 1 VALUE 'I',
delete TYPE c LENGTH 1 VALUE 'D',
END OF c_transport_mode.
TYPES: BEGIN OF ty_transport,
obj_type TYPE tadir-object,
obj_name TYPE tadir-obj_name,
trkorr TYPE trkorr,
END OF ty_transport.
TYPES ty_transport_list TYPE SORTED TABLE OF ty_transport WITH NON-UNIQUE KEY obj_type obj_name.
END OF c_transport_mode .
CONSTANTS:
BEGIN OF c_transport_status,
modifiable TYPE c LENGTH 1 VALUE 'D',
END OF c_transport_status .
METHODS confirm_transport_messages
RETURNING
VALUE(rv_messages_confirmed) TYPE abap_bool .
METHODS create_transport_entries
IMPORTING
!iv_transport TYPE trkorr
!it_table_ins TYPE ANY TABLE OPTIONAL
!it_table_upd TYPE ANY TABLE OPTIONAL
!it_table_del TYPE ANY TABLE OPTIONAL
!iv_tabname TYPE tabname
RAISING
zcx_abapgit_exception .
METHODS get_r3tr_obj_for_limu_obj
IMPORTING
!iv_object TYPE tadir-object
!iv_obj_name TYPE trobj_name
EXPORTING
!ev_object TYPE tadir-object
!ev_obj_name TYPE trobj_name
RAISING
zcx_abapgit_exception .
METHODS get_transports_for_list
IMPORTING
!it_items TYPE zif_abapgit_definitions=>ty_items_tt
RETURNING
VALUE(rt_transports) TYPE ty_transport_list
RAISING
zcx_abapgit_exception .
"! Returns the transport request / task the object is currently in
"! @parameter is_item | Object
"! @parameter rv_transport | Transport request / task
@ -41,6 +93,19 @@ INTERFACE zif_abapgit_cts_api
VALUE(rv_transport) TYPE trkorr
RAISING
zcx_abapgit_exception .
METHODS insert_transport_object
IMPORTING
!iv_pgmid TYPE tadir-pgmid DEFAULT 'R3TR'
!iv_object TYPE tadir-object
!iv_obj_name TYPE csequence
!iv_package TYPE devclass
!iv_language TYPE sy-langu DEFAULT sy-langu
!iv_mode TYPE c DEFAULT 'I'
EXPORTING
!ev_object TYPE tadir-object
!ev_obj_name TYPE trobj_name
RAISING
zcx_abapgit_exception .
"! Check if change recording is possible for the given package
"! @parameter iv_package | Package
"! @parameter rv_possible | Change recording is possible
@ -52,57 +117,48 @@ INTERFACE zif_abapgit_cts_api
VALUE(rv_possible) TYPE abap_bool
RAISING
zcx_abapgit_exception .
METHODS get_transports_for_list
METHODS list_open_requests_by_user
IMPORTING
!it_items TYPE zif_abapgit_definitions=>ty_items_tt
!iv_user TYPE sy-uname DEFAULT sy-uname
RETURNING
VALUE(rt_transports) TYPE ty_transport_list
VALUE(rt_trkorr) TYPE ty_trkorr_tt
RAISING
zcx_abapgit_exception .
METHODS get_r3tr_obj_for_limu_obj
METHODS list_r3tr_by_request
IMPORTING
iv_object TYPE tadir-object
iv_obj_name TYPE trobj_name
EXPORTING
ev_object TYPE tadir-object
ev_obj_name TYPE trobj_name
!iv_request TYPE trkorr
RETURNING
VALUE(rt_list) TYPE ty_transport_obj_tt
RAISING
zcx_abapgit_exception .
METHODS read
IMPORTING
!iv_trkorr TYPE trkorr
RETURNING
VALUE(rs_request) TYPE ty_transport_data
RAISING
zcx_abapgit_exception .
METHODS read_description
IMPORTING
iv_trkorr TYPE trkorr
!iv_trkorr TYPE trkorr
RETURNING
VALUE(rv_description) TYPE string.
VALUE(rv_description) TYPE string .
METHODS read_user
IMPORTING
iv_trkorr TYPE trkorr
!iv_trkorr TYPE trkorr
RETURNING
VALUE(rv_uname) TYPE uname.
METHODS create_transport_entries
VALUE(rv_uname) TYPE uname .
METHODS validate_transport_request
IMPORTING
iv_transport TYPE trkorr
it_table_ins TYPE ANY TABLE
it_table_upd TYPE ANY TABLE
it_table_del TYPE ANY TABLE
iv_tabname TYPE tabname
!iv_transport_request TYPE trkorr
RAISING
zcx_abapgit_exception .
METHODS change_transport_type
IMPORTING
!iv_transport_request TYPE trkorr
!iv_transport_type_from TYPE trfunction
!iv_transport_type_to TYPE trfunction
RAISING
zcx_abapgit_exception.
METHODS insert_transport_object
IMPORTING
iv_pgmid TYPE tadir-pgmid DEFAULT 'R3TR'
iv_object TYPE tadir-object
iv_obj_name TYPE csequence
iv_package TYPE devclass
iv_language TYPE sy-langu DEFAULT sy-langu
iv_mode TYPE c DEFAULT 'I'
EXPORTING
ev_object TYPE tadir-object
ev_obj_name TYPE trobj_name
RAISING
zcx_abapgit_exception.
ENDINTERFACE.

View File

@ -0,0 +1,24 @@
INTERFACE zif_abapgit_default_transport PUBLIC.
TYPES: BEGIN OF ty_get,
trfunction TYPE c LENGTH 1,
ordernum TYPE trkorr,
END OF ty_get.
METHODS set
IMPORTING
iv_transport TYPE trkorr
RAISING
zcx_abapgit_exception.
METHODS reset
RAISING
zcx_abapgit_exception.
METHODS get
RETURNING
VALUE(rs_default_task) TYPE ty_get
RAISING
zcx_abapgit_exception .
ENDINTERFACE.

View File

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_INTF" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<VSEOINTERF>
<CLSNAME>ZIF_ABAPGIT_DEFAULT_TRANSPORT</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>abapGit - Default Transport</DESCRIPT>
<EXPOSURE>2</EXPOSURE>
<STATE>1</STATE>
<UNICODE>X</UNICODE>
</VSEOINTERF>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -20,17 +20,18 @@ CLASS zcl_abapgit_data_deserializer DEFINITION
METHODS preview_database_changes
IMPORTING
!iv_name TYPE tadir-obj_name
!it_where TYPE string_table
!ir_data TYPE REF TO data
!ir_lc_data TYPE REF TO data
!ir_db_data TYPE REF TO data
RETURNING
VALUE(rs_result) TYPE zif_abapgit_data_deserializer=>ty_result
RAISING
zcx_abapgit_exception .
zcx_abapgit_exception.
METHODS write_database_table
IMPORTING
!iv_name TYPE tadir-obj_name
!ir_del TYPE REF TO data
!ir_ins TYPE REF TO data
!ir_upd TYPE REF TO data
RAISING
zcx_abapgit_exception .
METHODS read_database_table
@ -43,7 +44,7 @@ CLASS zcl_abapgit_data_deserializer DEFINITION
zcx_abapgit_exception .
METHODS determine_transport_request
IMPORTING
io_repo TYPE REF TO zcl_abapgit_repo
ii_repo TYPE REF TO zif_abapgit_repo
iv_transport_type TYPE zif_abapgit_definitions=>ty_transport_type
RETURNING
VALUE(rv_transport_request) TYPE trkorr.
@ -87,11 +88,11 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
" Use transport from repo settings if maintained, or determine via user exit.
" If transport keeps empty here, it'll requested later via popup.
rv_transport_request = io_repo->get_local_settings( )-customizing_request.
rv_transport_request = ii_repo->get_local_settings( )-customizing_request.
li_exit->determine_transport_request(
EXPORTING
io_repo = io_repo
ii_repo = ii_repo
iv_transport_type = iv_transport_type
CHANGING
cv_transport_request = rv_transport_request ).
@ -112,9 +113,6 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
METHOD preview_database_changes.
* method currently distinguishes between records be deleted and inserted (comparison of complete record)
* to-do: compare records based on database key of table to determine updates to existing records
DATA lr_data TYPE REF TO data.
FIELD-SYMBOLS <lg_old> TYPE ANY TABLE.
FIELD-SYMBOLS <lg_new> TYPE ANY TABLE.
@ -122,13 +120,10 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
FIELD-SYMBOLS <ls_ins> TYPE any.
FIELD-SYMBOLS <lg_del> TYPE ANY TABLE.
FIELD-SYMBOLS <lg_ins> TYPE ANY TABLE.
FIELD-SYMBOLS <lg_upd> TYPE ANY TABLE.
lr_data = read_database_table(
iv_name = iv_name
it_where = it_where ).
ASSIGN lr_data->* TO <lg_old>.
ASSIGN ir_data->* TO <lg_new>.
ASSIGN ir_db_data->* TO <lg_old>.
ASSIGN ir_lc_data->* TO <lg_new>.
rs_result-type = zif_abapgit_data_config=>c_data_type-tabu.
rs_result-name = iv_name.
@ -137,6 +132,7 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
rs_result-updates = zcl_abapgit_data_utils=>build_table_itab( iv_name ).
ASSIGN rs_result-deletes->* TO <lg_del>.
ASSIGN rs_result-inserts->* TO <lg_ins>.
ASSIGN rs_result-updates->* TO <lg_upd>.
<lg_del> = <lg_old>.
<lg_ins> = <lg_new>.
@ -145,6 +141,10 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
LOOP AT <lg_del> ASSIGNING <ls_del>.
READ TABLE <lg_ins> ASSIGNING <ls_ins> FROM <ls_del>.
IF sy-subrc = 0.
IF <ls_del> <> <ls_ins>.
" Identical key but not identical component values
INSERT <ls_ins> INTO TABLE <lg_upd>.
ENDIF.
DELETE TABLE <lg_del> FROM <ls_del>.
DELETE TABLE <lg_ins> FROM <ls_ins>.
ENDIF.
@ -163,10 +163,10 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
ASSIGN rr_data->* TO <lg_tab>.
LOOP AT it_where INTO lv_where.
SELECT * FROM (iv_name) APPENDING TABLE <lg_tab> WHERE (lv_where).
SELECT * FROM (iv_name) APPENDING TABLE <lg_tab> WHERE (lv_where) ORDER BY PRIMARY KEY.
ENDLOOP.
IF lines( it_where ) = 0.
SELECT * FROM (iv_name) INTO TABLE <lg_tab>.
SELECT * FROM (iv_name) INTO TABLE <lg_tab> ORDER BY PRIMARY KEY.
ENDIF.
ENDMETHOD.
@ -176,6 +176,7 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
FIELD-SYMBOLS <lg_del> TYPE ANY TABLE.
FIELD-SYMBOLS <lg_ins> TYPE ANY TABLE.
FIELD-SYMBOLS <lg_upd> TYPE ANY TABLE.
IF zcl_abapgit_data_utils=>does_table_exist( iv_name ) = abap_false.
zcx_abapgit_exception=>raise( |Table { iv_name } not found for data deserialization| ).
@ -183,6 +184,7 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
ASSIGN ir_del->* TO <lg_del>.
ASSIGN ir_ins->* TO <lg_ins>.
ASSIGN ir_upd->* TO <lg_upd>.
IF lines( <lg_del> ) > 0.
DELETE (iv_name) FROM TABLE <lg_del>.
@ -198,6 +200,13 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
ENDIF.
ENDIF.
IF lines( <lg_upd> ) > 0.
UPDATE (iv_name) FROM TABLE <lg_upd>.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise( |Error updating { lines( <lg_upd> ) } records into table { iv_name }| ).
ENDIF.
ENDIF.
ENDMETHOD.
@ -207,7 +216,6 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
DATA ls_result LIKE LINE OF it_result.
DATA li_cts_api TYPE REF TO zif_abapgit_cts_api.
DATA ls_file LIKE LINE OF rt_accessed_files.
FIELD-SYMBOLS:
<lt_ins> TYPE ANY TABLE,
@ -225,8 +233,8 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
obj_type = ls_result-type
obj_name = ls_result-name
decision = zif_abapgit_definitions=>c_yes.
IF sy-subrc <> 0.
RETURN.
IF sy-subrc <> 0.
CONTINUE.
ENDIF.
IF is_table_allowed_to_edit( ls_result ) = abap_false.
@ -236,11 +244,12 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
write_database_table(
iv_name = ls_result-name
ir_del = ls_result-deletes
ir_ins = ls_result-inserts ).
ir_ins = ls_result-inserts
ir_upd = ls_result-updates ).
ASSIGN ls_result-inserts->* TO <lt_ins>.
ASSIGN ls_result-deletes->* TO <lt_del>.
ASSIGN ls_result-updates->* TO <lt_upd>. " not used
ASSIGN ls_result-updates->* TO <lt_upd>.
IF zcl_abapgit_data_utils=>is_customizing_table( ls_result-name ) = abap_true.
IF li_cts_api IS INITIAL.
@ -267,10 +276,11 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
* this method does not persist any changes to the database
DATA lt_configs TYPE zif_abapgit_data_config=>ty_config_tt.
DATA ls_config LIKE LINE OF lt_configs.
DATA lr_data TYPE REF TO data.
DATA ls_file LIKE LINE OF it_files.
DATA ls_result LIKE LINE OF rt_result.
DATA ls_config LIKE LINE OF lt_configs.
DATA lr_lc_data TYPE REF TO data.
DATA lr_db_data TYPE REF TO data.
DATA ls_file LIKE LINE OF it_files.
DATA ls_result LIKE LINE OF rt_result.
lt_configs = ii_config->get_configs( ).
@ -278,7 +288,7 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
ASSERT ls_config-type = zif_abapgit_data_config=>c_data_type-tabu. " todo
ASSERT ls_config-name IS NOT INITIAL.
lr_data = zcl_abapgit_data_utils=>build_table_itab( ls_config-name ).
lr_lc_data = zcl_abapgit_data_utils=>build_table_itab( ls_config-name ).
READ TABLE it_files INTO ls_file
WITH KEY file_path
@ -286,13 +296,17 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
filename = zcl_abapgit_data_utils=>build_data_filename( ls_config ).
IF sy-subrc = 0.
convert_json_to_itab(
ir_data = lr_data
ir_data = lr_lc_data
is_file = ls_file ).
ls_result = preview_database_changes(
lr_db_data = read_database_table(
iv_name = ls_config-name
it_where = ls_config-where
ir_data = lr_data ).
it_where = ls_config-where ).
ls_result = preview_database_changes(
iv_name = ls_config-name
ir_lc_data = lr_lc_data
ir_db_data = lr_db_data ).
MOVE-CORRESPONDING ls_file TO ls_result-file. " data file
@ -323,7 +337,7 @@ CLASS zcl_abapgit_data_deserializer IMPLEMENTATION.
rs_checks-type-request = zif_abapgit_cts_api=>c_transport_type-cust_request.
rs_checks-type-task = zif_abapgit_cts_api=>c_transport_type-cust_task.
rs_checks-transport = determine_transport_request(
io_repo = io_repo
ii_repo = ii_repo
iv_transport_type = rs_checks-type ).
ENDIF.

View File

@ -5,6 +5,9 @@ CLASS ltcl_test DEFINITION FOR TESTING DURATION SHORT RISK LEVEL HARMLESS FINAL.
PRIVATE SECTION.
METHODS test1 FOR TESTING RAISING cx_static_check.
METHODS preview_database_changes_ins FOR TESTING RAISING cx_static_check.
METHODS preview_database_changes_upd FOR TESTING RAISING cx_static_check.
METHODS preview_database_changes_del FOR TESTING RAISING cx_static_check.
ENDCLASS.
@ -33,4 +36,196 @@ CLASS ltcl_test IMPLEMENTATION.
ENDMETHOD.
METHOD preview_database_changes_ins.
CONSTANTS: lc_msgnr TYPE c LENGTH 3 VALUE '999'.
DATA: li_cut TYPE REF TO zcl_abapgit_data_deserializer,
ls_config TYPE zif_abapgit_data_config=>ty_config,
lr_db_data TYPE REF TO data,
lr_lc_data TYPE REF TO data,
ls_t100 TYPE t100,
ls_result TYPE zif_abapgit_data_deserializer=>ty_result.
FIELD-SYMBOLS: <lt_db_data> TYPE ANY TABLE,
<lt_lc_data> TYPE ANY TABLE,
<lg_ins> TYPE ANY TABLE,
<ls_ins> TYPE t100,
<lg_upd> TYPE ANY TABLE,
<lg_del> TYPE ANY TABLE.
ls_config-type = zif_abapgit_data_config=>c_data_type-tabu.
ls_config-name = 'T100'.
lr_db_data = zcl_abapgit_data_utils=>build_table_itab( ls_config-name ).
ASSIGN lr_db_data->* TO <lt_db_data>.
lr_lc_data = zcl_abapgit_data_utils=>build_table_itab( ls_config-name ).
ASSIGN lr_lc_data->* TO <lt_lc_data>.
" Create test data for INSERT
ls_t100-sprsl = sy-langu.
ls_t100-arbgb = 'AUNIT_ABAPGIT'.
ls_t100-msgnr = lc_msgnr.
ls_t100-text = |abapGit aunit test|.
INSERT ls_t100 INTO TABLE <lt_lc_data>.
CREATE OBJECT li_cut TYPE zcl_abapgit_data_deserializer.
ls_result = li_cut->preview_database_changes(
iv_name = ls_config-name
ir_db_data = lr_db_data
ir_lc_data = lr_lc_data ).
ASSIGN ls_result-inserts->* TO <lg_ins>.
ASSIGN ls_result-updates->* TO <lg_upd>.
ASSIGN ls_result-deletes->* TO <lg_del>.
cl_abap_unit_assert=>assert_equals(
exp = 1
act = lines( <lg_ins> ) ).
cl_abap_unit_assert=>assert_equals(
exp = 0
act = lines( <lg_upd> ) ).
cl_abap_unit_assert=>assert_equals(
exp = 0
act = lines( <lg_del> ) ).
LOOP AT <lg_ins> ASSIGNING <ls_ins>.
cl_abap_unit_assert=>assert_equals(
exp = lc_msgnr
act = <ls_ins>-msgnr ).
ENDLOOP.
ENDMETHOD.
METHOD preview_database_changes_upd.
CONSTANTS: lc_msgnr TYPE c LENGTH 3 VALUE '999'.
DATA: li_cut TYPE REF TO zcl_abapgit_data_deserializer,
ls_config TYPE zif_abapgit_data_config=>ty_config,
lr_db_data TYPE REF TO data,
lr_lc_data TYPE REF TO data,
ls_t100 TYPE t100,
ls_result TYPE zif_abapgit_data_deserializer=>ty_result.
FIELD-SYMBOLS: <lt_db_data> TYPE ANY TABLE,
<lt_lc_data> TYPE ANY TABLE,
<lg_ins> TYPE ANY TABLE,
<lg_upd> TYPE ANY TABLE,
<ls_upd> TYPE t100,
<lg_del> TYPE ANY TABLE.
ls_config-type = zif_abapgit_data_config=>c_data_type-tabu.
ls_config-name = 'T100'.
lr_db_data = zcl_abapgit_data_utils=>build_table_itab( ls_config-name ).
ASSIGN lr_db_data->* TO <lt_db_data>.
lr_lc_data = zcl_abapgit_data_utils=>build_table_itab( ls_config-name ).
ASSIGN lr_lc_data->* TO <lt_lc_data>.
" Create test data for UPDATE
ls_t100-sprsl = sy-langu.
ls_t100-arbgb = |AUNIT_ABAPGIT|.
ls_t100-msgnr = lc_msgnr.
ls_t100-text = |abapGit aunit test|.
INSERT ls_t100 INTO TABLE <lt_db_data>.
ls_t100-sprsl = sy-langu.
ls_t100-arbgb = 'AUNIT_ABAPGIT'.
ls_t100-msgnr = lc_msgnr.
ls_t100-text = |abapGit aunit test UPDATE|.
INSERT ls_t100 INTO TABLE <lt_lc_data>.
CREATE OBJECT li_cut TYPE zcl_abapgit_data_deserializer.
ls_result = li_cut->preview_database_changes(
iv_name = ls_config-name
ir_db_data = lr_db_data
ir_lc_data = lr_lc_data ).
ASSIGN ls_result-inserts->* TO <lg_ins>.
ASSIGN ls_result-updates->* TO <lg_upd>.
ASSIGN ls_result-deletes->* TO <lg_del>.
cl_abap_unit_assert=>assert_equals(
exp = 0
act = lines( <lg_ins> ) ).
cl_abap_unit_assert=>assert_equals(
exp = 1
act = lines( <lg_upd> ) ).
cl_abap_unit_assert=>assert_equals(
exp = 0
act = lines( <lg_del> ) ).
LOOP AT <lg_upd> ASSIGNING <ls_upd>.
cl_abap_unit_assert=>assert_equals(
exp = lc_msgnr
act = <ls_upd>-msgnr ).
ENDLOOP.
ENDMETHOD.
METHOD preview_database_changes_del.
CONSTANTS: lc_msgnr TYPE c LENGTH 3 VALUE '999'.
DATA: li_cut TYPE REF TO zcl_abapgit_data_deserializer,
ls_config TYPE zif_abapgit_data_config=>ty_config,
lr_db_data TYPE REF TO data,
lr_lc_data TYPE REF TO data,
ls_t100 TYPE t100,
ls_result TYPE zif_abapgit_data_deserializer=>ty_result.
FIELD-SYMBOLS: <lt_db_data> TYPE ANY TABLE,
<lt_lc_data> TYPE ANY TABLE,
<lg_ins> TYPE ANY TABLE,
<lg_upd> TYPE ANY TABLE,
<lg_del> TYPE ANY TABLE,
<ls_del> TYPE t100.
ls_config-type = zif_abapgit_data_config=>c_data_type-tabu.
ls_config-name = 'T100'.
lr_db_data = zcl_abapgit_data_utils=>build_table_itab( ls_config-name ).
ASSIGN lr_db_data->* TO <lt_db_data>.
lr_lc_data = zcl_abapgit_data_utils=>build_table_itab( ls_config-name ).
ASSIGN lr_lc_data->* TO <lt_lc_data>.
" Create test data for DELETE
ls_t100-sprsl = sy-langu.
ls_t100-arbgb = 'AUNIT_ABAPGIT'.
ls_t100-msgnr = lc_msgnr.
ls_t100-text = |abapGit aunit test DELETE|.
INSERT ls_t100 INTO TABLE <lt_db_data>.
CREATE OBJECT li_cut TYPE zcl_abapgit_data_deserializer.
ls_result = li_cut->preview_database_changes(
iv_name = ls_config-name
ir_db_data = lr_db_data
ir_lc_data = lr_lc_data ).
ASSIGN ls_result-inserts->* TO <lg_ins>.
ASSIGN ls_result-updates->* TO <lg_upd>.
ASSIGN ls_result-deletes->* TO <lg_del>.
cl_abap_unit_assert=>assert_equals(
exp = 0
act = lines( <lg_ins> ) ).
cl_abap_unit_assert=>assert_equals(
exp = 0
act = lines( <lg_upd> ) ).
cl_abap_unit_assert=>assert_equals(
exp = 1
act = lines( <lg_del> ) ).
LOOP AT <lg_del> ASSIGNING <ls_del>.
cl_abap_unit_assert=>assert_equals(
exp = lc_msgnr
act = <ls_del>-msgnr ).
ENDLOOP.
ENDMETHOD.
ENDCLASS.

View File

@ -1,5 +1,6 @@
CLASS zcl_abapgit_data_injector DEFINITION
PUBLIC
FOR TESTING
CREATE PUBLIC .
PUBLIC SECTION.

View File

@ -6,6 +6,7 @@
<CLSNAME>ZCL_ABAPGIT_DATA_INJECTOR</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>abapGit - Data Injector</DESCRIPT>
<CATEGORY>05</CATEGORY>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>

View File

@ -82,10 +82,10 @@ CLASS zcl_abapgit_data_serializer IMPLEMENTATION.
TRY.
LOOP AT it_where INTO lv_where.
SELECT * FROM (iv_name) APPENDING TABLE <lg_tab> WHERE (lv_where).
SELECT * FROM (iv_name) APPENDING TABLE <lg_tab> WHERE (lv_where) ORDER BY PRIMARY KEY.
ENDLOOP.
IF lines( it_where ) = 0.
SELECT * FROM (iv_name) INTO TABLE <lg_tab>.
SELECT * FROM (iv_name) INTO TABLE <lg_tab> ORDER BY PRIMARY KEY.
ENDIF.
CATCH cx_sy_sql_error INTO lx_sql.
zcx_abapgit_exception=>raise(

View File

@ -40,7 +40,8 @@ CLASS zcl_abapgit_data_supporter IMPLEMENTATION.
AND dd09l~tabart = 'APPL2'
AND dd09l~as4user <> 'SAP'
AND dd09l~as4local = 'A' "Only active tables
AND dd02l~contflag = 'C'. "Only customizing tables
AND dd02l~contflag = 'C' "Only customizing tables
ORDER BY dd02l~tabname.
LOOP AT lt_tables INTO lv_tabname.
ls_object-type = zif_abapgit_data_config=>c_data_type-tabu.
@ -51,7 +52,7 @@ CLASS zcl_abapgit_data_supporter IMPLEMENTATION.
" The list of supported objects can be enhanced using an exit
" Name patterns are allowed. For example, TABU T009*
li_exit = zcl_abapgit_exit=>get_instance( ).
li_exit->change_supported_data_objects( CHANGING ct_objects = mt_supported_objects ).
li_exit->change_supported_data_objects( CHANGING ct_objects = mt_supported_objects ).
ENDMETHOD.

View File

@ -3,7 +3,7 @@ CLASS zcl_abapgit_data_utils DEFINITION
CREATE PUBLIC.
PUBLIC SECTION.
TYPES ty_names TYPE STANDARD TABLE OF abap_compname WITH DEFAULT KEY .
CLASS-METHODS build_table_itab
IMPORTING
!iv_name TYPE tadir-obj_name
@ -23,9 +23,7 @@ CLASS zcl_abapgit_data_utils DEFINITION
VALUE(rv_filename) TYPE string.
CLASS-METHODS jump
IMPORTING
!is_item TYPE zif_abapgit_definitions=>ty_item
RETURNING
VALUE(rv_exit) TYPE abap_bool
!is_item TYPE zif_abapgit_definitions=>ty_item
RAISING
zcx_abapgit_exception.
CLASS-METHODS does_table_exist
@ -38,9 +36,6 @@ CLASS zcl_abapgit_data_utils DEFINITION
!iv_name TYPE tadir-obj_name
RETURNING
VALUE(rv_customizing) TYPE abap_bool.
PROTECTED SECTION.
PRIVATE SECTION.
TYPES ty_names TYPE STANDARD TABLE OF abap_compname WITH DEFAULT KEY .
CLASS-METHODS list_key_fields
IMPORTING
!iv_name TYPE tadir-obj_name
@ -48,6 +43,8 @@ CLASS zcl_abapgit_data_utils DEFINITION
VALUE(rt_names) TYPE ty_names
RAISING
zcx_abapgit_exception.
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.
@ -106,7 +103,7 @@ CLASS zcl_abapgit_data_utils IMPLEMENTATION.
lt_names = list_key_fields( iv_name ).
APPEND INITIAL LINE TO lt_keys ASSIGNING <ls_key>.
<ls_key>-access_kind = cl_abap_tabledescr=>tablekind_sorted.
<ls_key>-access_kind = cl_abap_tabledescr=>tablekind_hashed.
<ls_key>-key_kind = cl_abap_tabledescr=>keydefkind_user.
<ls_key>-is_primary = abap_true.
<ls_key>-is_unique = abap_true.
@ -169,7 +166,10 @@ CLASS zcl_abapgit_data_utils IMPLEMENTATION.
ro_delivery_class = lo_delivery_class.
ASSIGN lo_delivery_class->('VALUE') TO <ls_any>.
lv_contflag = <ls_any>.
CATCH cx_sy_dyn_call_illegal_class.
CATCH cx_sy_dyn_call_illegal_class cx_no_check.
" Catching SAP standard exception CX_NO_CHECK,
" because of the expected exception CX_XCO_RUNTIME_EXCEPTION
" could not be used here directly to keep the indirect usage approach.
SELECT SINGLE contflag FROM ('DD02L') INTO lv_contflag WHERE tabname = iv_name.
ENDTRY.
@ -196,7 +196,7 @@ CLASS zcl_abapgit_data_utils IMPLEMENTATION.
db_not_exists = 3
no_permission = 4
no_change_allowed = 5
table_is_gtt = 6
* table_is_gtt = 6 " not in lower releases
OTHERS = 7.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise( |Table { is_item-obj_name } cannot be displayed| ).

View File

@ -1,12 +1,9 @@
CLASS ltcl_data_utils_test DEFINITION FINAL
FOR TESTING
RISK LEVEL HARMLESS
DURATION SHORT.
CLASS ltcl_data_utils_test DEFINITION FINAL FOR TESTING RISK LEVEL HARMLESS DURATION SHORT.
PRIVATE SECTION.
METHODS build_data_filename FOR TESTING.
METHODS build_config_filename FOR TESTING.
METHODS build_data_filename FOR TESTING RAISING cx_static_check.
METHODS build_config_filename FOR TESTING RAISING cx_static_check.
METHODS build_table_itab FOR TESTING RAISING cx_static_check.
ENDCLASS.
@ -52,4 +49,23 @@ CLASS ltcl_data_utils_test IMPLEMENTATION.
ENDMETHOD.
METHOD build_table_itab.
DATA lr_data TYPE REF TO data.
DATA ls_row TYPE t100.
FIELD-SYMBOLS <lt_tab> TYPE ANY TABLE.
FIELD-SYMBOLS <ls_row> TYPE any.
lr_data = zcl_abapgit_data_utils=>build_table_itab( 'T100' ).
ASSIGN lr_data->* TO <lt_tab>.
* test that the table works with basic itab operations,
INSERT ls_row INTO TABLE <lt_tab>.
cl_abap_unit_assert=>assert_subrc( ).
READ TABLE <lt_tab> ASSIGNING <ls_row> FROM ls_row.
cl_abap_unit_assert=>assert_subrc( ).
ENDMETHOD.
ENDCLASS.

View File

@ -15,7 +15,7 @@ INTERFACE zif_abapgit_data_deserializer
METHODS deserialize_check
IMPORTING
!io_repo TYPE REF TO zcl_abapgit_repo
!ii_repo TYPE REF TO zif_abapgit_repo
!ii_config TYPE REF TO zif_abapgit_data_config
RETURNING
VALUE(rs_checks) TYPE zif_abapgit_definitions=>ty_deserialize_checks-customizing

10
src/env/package.devc.xml vendored Normal file
View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DEVC" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DEVC>
<CTEXT>abapGit - Environment</CTEXT>
</DEVC>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -0,0 +1,278 @@
CLASS zcl_abapgit_abap_language_vers DEFINITION
PUBLIC
FINAL
CREATE PUBLIC.
PUBLIC SECTION.
CONSTANTS:
c_any_abap_language_version TYPE zif_abapgit_aff_types_v1=>ty_abap_language_version VALUE '*',
c_no_abap_language_version TYPE zif_abapgit_aff_types_v1=>ty_abap_language_version VALUE '-',
c_feature_flag TYPE string VALUE 'ALAV'.
METHODS constructor
IMPORTING
!io_dot_abapgit TYPE REF TO zcl_abapgit_dot_abapgit.
METHODS get_abap_language_vers_by_objt
IMPORTING
!iv_object_type TYPE trobjtype
!iv_package TYPE devclass
RETURNING
VALUE(rv_allowed_abap_langu_version) TYPE zif_abapgit_aff_types_v1=>ty_abap_language_version.
METHODS get_repo_abap_language_version
RETURNING
VALUE(rv_abap_language_version) TYPE zif_abapgit_aff_types_v1=>ty_abap_language_version.
METHODS is_import_allowed
IMPORTING
!iv_package TYPE devclass
RETURNING
VALUE(rv_allowed) TYPE abap_bool.
CLASS-METHODS check_abap_language_version
IMPORTING
!iv_abap_language_version TYPE zif_abapgit_aff_types_v1=>ty_abap_language_version
!is_item TYPE zif_abapgit_definitions=>ty_item
RAISING
zcx_abapgit_exception.
PROTECTED SECTION.
PRIVATE SECTION.
DATA mo_dot_abapgit TYPE REF TO zcl_abapgit_dot_abapgit.
" Depends on experimental feature flag and repo setting
DATA mv_has_abap_language_vers TYPE abap_bool.
METHODS get_default_abap_language_vers
IMPORTING
!iv_object_type TYPE trobjtype
RETURNING
VALUE(rv_abap_language_version) TYPE zif_abapgit_aff_types_v1=>ty_abap_language_version.
METHODS get_abap_language_vers_by_devc
IMPORTING
!iv_package TYPE devclass
RETURNING
VALUE(rv_abap_language_version) TYPE string.
METHODS get_abap_language_vers_by_repo
RETURNING
VALUE(rv_abap_language_version) TYPE string.
CLASS-METHODS get_description
IMPORTING
!iv_abap_language_version TYPE zif_abapgit_aff_types_v1=>ty_abap_language_version
RETURNING
VALUE(rv_description) TYPE string.
ENDCLASS.
CLASS zcl_abapgit_abap_language_vers IMPLEMENTATION.
METHOD check_abap_language_version.
" Check if ABAP language version matches repository setting
IF is_item-abap_language_version IS NOT INITIAL AND iv_abap_language_version <> is_item-abap_language_version.
zcx_abapgit_exception=>raise(
|Object { is_item-obj_type } { is_item-obj_name } has { get_description( iv_abap_language_version ) }| &&
| but repository is set to { get_description( is_item-abap_language_version ) }| ).
ENDIF.
ENDMETHOD.
METHOD constructor.
mo_dot_abapgit = io_dot_abapgit.
IF zcl_abapgit_feature=>is_enabled( c_feature_flag ) = abap_false.
mv_has_abap_language_vers = abap_undefined.
ELSEIF get_abap_language_vers_by_repo( ) = zif_abapgit_dot_abapgit=>c_abap_language_version-undefined.
mv_has_abap_language_vers = abap_undefined.
ELSEIF get_abap_language_vers_by_repo( ) = zif_abapgit_dot_abapgit=>c_abap_language_version-ignore.
mv_has_abap_language_vers = abap_false.
ELSE.
mv_has_abap_language_vers = abap_true.
ENDIF.
ENDMETHOD.
METHOD get_abap_language_vers_by_devc.
DATA lv_class TYPE string.
DATA lv_abap_lang_version_devc TYPE string.
DATA lo_abap_language_version_cfg TYPE REF TO object.
lv_class = 'CL_ABAP_LANGUAGE_VERSION_CFG'.
TRY.
CALL METHOD (lv_class)=>('GET_INSTANCE')
RECEIVING
ro_instance = lo_abap_language_version_cfg.
" For non-existing packages, GET_PACKAGE_DEFAULT_VERSION returns "standard"
" but we want to return "undefined" in this case to allow any new packages
IF zcl_abapgit_factory=>get_sap_package( iv_package )->exists( ) = abap_true.
CALL METHOD lo_abap_language_version_cfg->('IF_ABAP_LANGUAGE_VERSION_CFG~GET_PACKAGE_DEFAULT_VERSION')
EXPORTING
iv_package_name = iv_package
RECEIVING
rv_default_language_version = lv_abap_lang_version_devc.
ELSE.
lv_abap_lang_version_devc = '-'.
ENDIF.
CASE lv_abap_lang_version_devc.
WHEN zif_abapgit_aff_types_v1=>co_abap_language_version-standard.
rv_abap_language_version = zif_abapgit_dot_abapgit=>c_abap_language_version-standard.
WHEN zif_abapgit_aff_types_v1=>co_abap_language_version-key_user.
rv_abap_language_version = zif_abapgit_dot_abapgit=>c_abap_language_version-key_user.
WHEN zif_abapgit_aff_types_v1=>co_abap_language_version-cloud_development.
rv_abap_language_version = zif_abapgit_dot_abapgit=>c_abap_language_version-cloud_development.
WHEN OTHERS.
rv_abap_language_version = zif_abapgit_dot_abapgit=>c_abap_language_version-undefined.
ENDCASE.
CATCH cx_root.
rv_abap_language_version = zif_abapgit_dot_abapgit=>c_abap_language_version-undefined.
ENDTRY.
ENDMETHOD.
METHOD get_abap_language_vers_by_objt.
DATA lv_class TYPE string.
DATA lo_abap_language_version TYPE REF TO object.
IF mv_has_abap_language_vers = abap_undefined.
rv_allowed_abap_langu_version = c_any_abap_language_version.
ELSEIF mv_has_abap_language_vers = abap_false.
rv_allowed_abap_langu_version = c_no_abap_language_version.
ELSE. " abap_true
lv_class = 'CL_ABAP_LANGUAGE_VERSION'.
TRY.
CALL METHOD (lv_class)=>('GET_INSTANCE')
RECEIVING
ro_version_handler = lo_abap_language_version.
CALL METHOD lo_abap_language_version->('IF_ABAP_LANGUAGE_VERSION~GET_DEFAULT_VERSION')
EXPORTING
iv_object_type = iv_object_type
iv_package = iv_package
RECEIVING
rv_default_version = rv_allowed_abap_langu_version.
CATCH cx_root.
rv_allowed_abap_langu_version = get_default_abap_language_vers( iv_object_type ).
ENDTRY.
ENDIF.
ENDMETHOD.
METHOD get_abap_language_vers_by_repo.
rv_abap_language_version = mo_dot_abapgit->get_abap_language_version( ).
IF rv_abap_language_version IS INITIAL.
rv_abap_language_version = zif_abapgit_dot_abapgit=>c_abap_language_version-undefined.
ENDIF.
ENDMETHOD.
METHOD get_default_abap_language_vers.
IF zcl_abapgit_factory=>get_environment( )->is_sap_cloud_platform( ) = abap_true.
" On BTP, default to ABAP for Cloud Development
rv_abap_language_version = zif_abapgit_aff_types_v1=>co_abap_language_version_cloud-cloud_development.
ELSE.
" Differentiate between source code object and non-source code objects
CASE iv_object_type.
WHEN 'BDEF' OR 'CLAS' OR 'FUGR' OR 'FUGS' OR 'INTF' OR 'PROG' OR 'TYPE'.
rv_abap_language_version = zif_abapgit_aff_types_v1=>co_abap_language_version_src-standard.
WHEN OTHERS.
rv_abap_language_version = zif_abapgit_aff_types_v1=>co_abap_language_version-standard.
ENDCASE.
ENDIF.
ENDMETHOD.
METHOD get_description.
CASE iv_abap_language_version.
WHEN zif_abapgit_aff_types_v1=>co_abap_language_version-standard
OR zif_abapgit_aff_types_v1=>co_abap_language_version_src-standard.
rv_description = 'Standard ABAP'.
WHEN zif_abapgit_aff_types_v1=>co_abap_language_version-key_user
OR zif_abapgit_aff_types_v1=>co_abap_language_version_src-key_user.
rv_description = 'ABAP for Key Users'.
WHEN zif_abapgit_aff_types_v1=>co_abap_language_version-cloud_development
OR zif_abapgit_aff_types_v1=>co_abap_language_version_src-cloud_development.
rv_description = 'ABAP for Cloud Development'.
WHEN OTHERS.
rv_description = 'Undefined'.
ENDCASE.
rv_description = |ABAP language version "{ rv_description }"|.
ENDMETHOD.
METHOD get_repo_abap_language_version.
DATA lv_abap_language_version TYPE string.
IF mv_has_abap_language_vers <> abap_undefined. " abap_true or abap_false
lv_abap_language_version = mo_dot_abapgit->get_abap_language_version( ).
ENDIF.
CASE lv_abap_language_version.
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-standard.
rv_abap_language_version = zif_abapgit_aff_types_v1=>co_abap_language_version_src-standard.
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-key_user.
rv_abap_language_version = zif_abapgit_aff_types_v1=>co_abap_language_version_src-key_user.
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-cloud_development.
rv_abap_language_version = zif_abapgit_aff_types_v1=>co_abap_language_version_src-cloud_development.
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-ignore.
rv_abap_language_version = c_no_abap_language_version.
WHEN OTHERS. " undefined or feature off
rv_abap_language_version = c_any_abap_language_version.
ENDCASE.
ENDMETHOD.
METHOD is_import_allowed.
DATA lv_package_version TYPE string.
lv_package_version = get_abap_language_vers_by_devc( iv_package ).
CASE get_abap_language_vers_by_repo( ).
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-undefined
OR zif_abapgit_dot_abapgit=>c_abap_language_version-ignore.
rv_allowed = abap_true.
WHEN OTHERS.
IF get_abap_language_vers_by_repo( ) = lv_package_version.
" allow packages that match repo setting
rv_allowed = abap_true.
ELSEIF lv_package_version = zif_abapgit_dot_abapgit=>c_abap_language_version-undefined.
" always allow new packages
rv_allowed = abap_true.
ELSE.
rv_allowed = abap_false.
ENDIF.
ENDCASE.
ENDMETHOD.
ENDCLASS.

View File

@ -0,0 +1,495 @@
* Helper to toggle (cloud) enviroment
CLASS lcl_environment DEFINITION.
PUBLIC SECTION.
INTERFACES zif_abapgit_environment.
DATA mv_is_cloud TYPE abap_bool.
METHODS set_cloud
IMPORTING
iv_is_cloud TYPE abap_bool.
ENDCLASS.
CLASS lcl_environment IMPLEMENTATION.
METHOD set_cloud.
mv_is_cloud = iv_is_cloud.
ENDMETHOD.
METHOD zif_abapgit_environment~is_sap_cloud_platform.
rv_result = mv_is_cloud.
ENDMETHOD.
METHOD zif_abapgit_environment~compare_with_inactive.
ENDMETHOD.
METHOD zif_abapgit_environment~get_basis_release.
ENDMETHOD.
METHOD zif_abapgit_environment~get_available_user_sessions.
ENDMETHOD.
METHOD zif_abapgit_environment~get_system_language_filter.
ENDMETHOD.
METHOD zif_abapgit_environment~is_merged.
ENDMETHOD.
METHOD zif_abapgit_environment~is_repo_object_changes_allowed.
ENDMETHOD.
METHOD zif_abapgit_environment~is_restart_required.
ENDMETHOD.
METHOD zif_abapgit_environment~is_sap_object_allowed.
ENDMETHOD.
METHOD zif_abapgit_environment~is_variant_maintenance.
ENDMETHOD.
METHOD zif_abapgit_environment~init_parallel_processing.
ENDMETHOD.
METHOD zif_abapgit_environment~check_parallel_processing.
ENDMETHOD.
ENDCLASS.
* Helper to toggle experimental features
CLASS lcl_persist_settings DEFINITION.
PUBLIC SECTION.
INTERFACES zif_abapgit_persist_settings.
DATA mo_settings TYPE REF TO zcl_abapgit_settings.
METHODS constructor.
ENDCLASS.
CLASS lcl_persist_settings IMPLEMENTATION.
METHOD constructor.
CREATE OBJECT mo_settings.
ENDMETHOD.
METHOD zif_abapgit_persist_settings~modify.
ENDMETHOD.
METHOD zif_abapgit_persist_settings~read.
ro_settings = mo_settings.
ENDMETHOD.
ENDCLASS.
* Test cases
CLASS ltcl_abap_language_version DEFINITION FOR TESTING RISK LEVEL HARMLESS
DURATION SHORT FINAL.
PRIVATE SECTION.
" Cloud package hardcoded in cl_abap_language_version
CONSTANTS c_cloud_package TYPE devclass VALUE 'TEST_LANGUAGE_VERSION_SCP'.
CONSTANTS c_language_cfg TYPE seoclsname VALUE 'CL_ABAP_LANGUAGE_VERSION_CFG'.
DATA:
mt_versions TYPE string_table,
mv_has_cloud_package TYPE abap_bool,
mv_has_language_cfg TYPE abap_bool,
mo_environment TYPE REF TO lcl_environment,
mi_persistency TYPE REF TO zif_abapgit_persist_settings,
mo_dot_abapgit TYPE REF TO zcl_abapgit_dot_abapgit,
mo_cut TYPE REF TO zcl_abapgit_abap_language_vers.
METHODS:
setup,
init
IMPORTING
iv_abap_language_version TYPE string,
set_environment
IMPORTING
iv_is_cloud TYPE abap_bool,
set_features
IMPORTING
iv_features TYPE string,
repo_setting_test
IMPORTING
iv_version TYPE string
iv_exp TYPE zif_abapgit_aff_types_v1=>ty_abap_language_version,
object_type_test
IMPORTING
iv_version TYPE string
iv_standard TYPE zif_abapgit_aff_types_v1=>ty_abap_language_version
iv_standard_src TYPE zif_abapgit_aff_types_v1=>ty_abap_language_version
iv_cloud TYPE zif_abapgit_aff_types_v1=>ty_abap_language_version
iv_cloud_src TYPE zif_abapgit_aff_types_v1=>ty_abap_language_version,
is_import_allowed_test
IMPORTING
iv_version TYPE string
iv_standard TYPE abap_bool
iv_cloud TYPE abap_bool
iv_new TYPE abap_bool.
METHODS:
repo_setting_feature_off FOR TESTING,
repo_setting_feature_on FOR TESTING,
object_type_feature_off FOR TESTING,
object_type_feature_on FOR TESTING,
is_import_allowed FOR TESTING,
check_abap_language_vers_same FOR TESTING RAISING zcx_abapgit_exception,
check_abap_language_vers_diff FOR TESTING.
ENDCLASS.
CLASS ltcl_abap_language_version IMPLEMENTATION.
METHOD setup.
CREATE OBJECT mo_environment.
zcl_abapgit_injector=>set_environment( mo_environment ).
CREATE OBJECT mi_persistency TYPE lcl_persist_settings.
zcl_abapgit_persist_injector=>set_settings( mi_persistency ).
APPEND zif_abapgit_dot_abapgit=>c_abap_language_version-undefined TO mt_versions.
APPEND zif_abapgit_dot_abapgit=>c_abap_language_version-ignore TO mt_versions.
APPEND zif_abapgit_dot_abapgit=>c_abap_language_version-standard TO mt_versions.
APPEND zif_abapgit_dot_abapgit=>c_abap_language_version-key_user TO mt_versions.
APPEND zif_abapgit_dot_abapgit=>c_abap_language_version-cloud_development TO mt_versions.
mv_has_cloud_package = zcl_abapgit_factory=>get_sap_package( c_cloud_package )->exists( ).
ENDMETHOD.
METHOD init.
mo_dot_abapgit = zcl_abapgit_dot_abapgit=>build_default( ).
mo_dot_abapgit->set_abap_language_version( iv_abap_language_version ).
CREATE OBJECT mo_cut
EXPORTING
io_dot_abapgit = mo_dot_abapgit.
ENDMETHOD.
METHOD set_environment.
mo_environment->set_cloud( iv_is_cloud ).
ENDMETHOD.
METHOD set_features.
mi_persistency->read( )->set_experimental_features( iv_features ).
ENDMETHOD.
METHOD repo_setting_test.
init( iv_version ).
" Assume on-prem (no cloud)
set_environment( abap_false ).
cl_abap_unit_assert=>assert_equals(
act = mo_cut->get_repo_abap_language_version( )
exp = iv_exp
msg = |ABAP Language Version: { iv_version }, On-prem| ).
" Assume cloud platform
set_environment( abap_true ).
cl_abap_unit_assert=>assert_equals(
act = mo_cut->get_repo_abap_language_version( )
exp = iv_exp
msg = |ABAP Language Version: { iv_version }, Cloud| ).
ENDMETHOD.
METHOD repo_setting_feature_off.
DATA lv_version TYPE string.
" If experimental feature is off, repo setting is not taken into consideration
set_features( '' ).
LOOP AT mt_versions INTO lv_version.
repo_setting_test(
iv_version = lv_version
iv_exp = zcl_abapgit_abap_language_vers=>c_any_abap_language_version ).
ENDLOOP.
ENDMETHOD.
METHOD repo_setting_feature_on.
DATA lv_version TYPE string.
" If experimental feature is on, repo setting is returned
set_features( zcl_abapgit_abap_language_vers=>c_feature_flag ).
LOOP AT mt_versions INTO lv_version.
CASE lv_version.
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-undefined.
repo_setting_test(
iv_version = lv_version
iv_exp = zcl_abapgit_abap_language_vers=>c_any_abap_language_version ).
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-ignore.
repo_setting_test(
iv_version = lv_version
iv_exp = zcl_abapgit_abap_language_vers=>c_no_abap_language_version ).
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-standard.
repo_setting_test(
iv_version = lv_version
iv_exp = zif_abapgit_aff_types_v1=>co_abap_language_version_src-standard ).
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-key_user.
repo_setting_test(
iv_version = lv_version
iv_exp = zif_abapgit_aff_types_v1=>co_abap_language_version_src-key_user ).
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-cloud_development.
repo_setting_test(
iv_version = lv_version
iv_exp = zif_abapgit_aff_types_v1=>co_abap_language_version_src-cloud_development ).
ENDCASE.
ENDLOOP.
ENDMETHOD.
METHOD object_type_test.
init( iv_version ).
" Assume on-prem (no cloud)
set_environment( abap_false ).
" source code
cl_abap_unit_assert=>assert_equals(
act = mo_cut->get_abap_language_vers_by_objt(
iv_object_type = 'INTF'
iv_package = '$TMP' )
exp = iv_standard_src
msg = |ABAP Language Version: { iv_version }, On-prem| ).
" non-source code
cl_abap_unit_assert=>assert_equals(
act = mo_cut->get_abap_language_vers_by_objt(
iv_object_type = 'TABL'
iv_package = '$TMP' )
exp = iv_standard
msg = |ABAP Language Version: { iv_version }, On-prem| ).
" Assume cloud platform
IF mv_has_cloud_package = abap_false.
RETURN.
ENDIF.
set_environment( abap_true ).
" source code
cl_abap_unit_assert=>assert_equals(
act = mo_cut->get_abap_language_vers_by_objt(
iv_object_type = 'INTF'
iv_package = c_cloud_package )
exp = iv_cloud_src
msg = |ABAP Language Version: { iv_version }, Cloud| ).
" non-source code
cl_abap_unit_assert=>assert_equals(
act = mo_cut->get_abap_language_vers_by_objt(
iv_object_type = 'TABL'
iv_package = c_cloud_package )
exp = iv_cloud
msg = |ABAP Language Version: { iv_version }, Cloud| ).
ENDMETHOD.
METHOD object_type_feature_off.
DATA lv_version TYPE string.
" If experimental feature is off, repo setting is ignored
set_features( '' ).
LOOP AT mt_versions INTO lv_version.
object_type_test(
iv_version = lv_version
iv_standard = zcl_abapgit_abap_language_vers=>c_any_abap_language_version
iv_standard_src = zcl_abapgit_abap_language_vers=>c_any_abap_language_version
iv_cloud = zcl_abapgit_abap_language_vers=>c_any_abap_language_version
iv_cloud_src = zcl_abapgit_abap_language_vers=>c_any_abap_language_version ).
ENDLOOP.
ENDMETHOD.
METHOD object_type_feature_on.
DATA lv_version TYPE string.
" If experimental feature is on, repo setting is ignored but package setting is returned
set_features( zcl_abapgit_abap_language_vers=>c_feature_flag ).
LOOP AT mt_versions INTO lv_version.
CASE lv_version.
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-undefined.
object_type_test(
iv_version = lv_version
iv_standard = zcl_abapgit_abap_language_vers=>c_any_abap_language_version
iv_standard_src = zcl_abapgit_abap_language_vers=>c_any_abap_language_version
iv_cloud = zcl_abapgit_abap_language_vers=>c_any_abap_language_version
iv_cloud_src = zcl_abapgit_abap_language_vers=>c_any_abap_language_version ).
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-ignore.
object_type_test(
iv_version = lv_version
iv_standard = zcl_abapgit_abap_language_vers=>c_no_abap_language_version
iv_standard_src = zcl_abapgit_abap_language_vers=>c_no_abap_language_version
iv_cloud = zcl_abapgit_abap_language_vers=>c_no_abap_language_version
iv_cloud_src = zcl_abapgit_abap_language_vers=>c_no_abap_language_version ).
WHEN OTHERS.
object_type_test(
iv_version = lv_version
iv_standard = zif_abapgit_aff_types_v1=>co_abap_language_version-standard
iv_standard_src = zif_abapgit_aff_types_v1=>co_abap_language_version_src-standard
iv_cloud = zif_abapgit_aff_types_v1=>co_abap_language_version-cloud_development
iv_cloud_src = zif_abapgit_aff_types_v1=>co_abap_language_version_src-cloud_development ).
ENDCASE.
ENDLOOP.
ENDMETHOD.
METHOD is_import_allowed_test.
init( iv_version ).
" Assume on-prem (no cloud)
set_environment( abap_false ).
IF mv_has_language_cfg = abap_true.
cl_abap_unit_assert=>assert_equals(
act = mo_cut->is_import_allowed( '$TMP' ) " existing standard package
exp = iv_standard ).
ENDIF.
IF mv_has_cloud_package = abap_true.
cl_abap_unit_assert=>assert_equals(
act = mo_cut->is_import_allowed( c_cloud_package ) " existing cloud package
exp = iv_cloud ).
ENDIF.
cl_abap_unit_assert=>assert_equals(
act = mo_cut->is_import_allowed( 'Z_FOO_BAR' ) " non-existing package
exp = iv_new ).
" Assume cloud platform
set_environment( abap_true ).
IF mv_has_language_cfg = abap_true.
cl_abap_unit_assert=>assert_equals(
act = mo_cut->is_import_allowed( '$TMP' ) " existing standard package
exp = iv_standard ).
ENDIF.
IF mv_has_cloud_package = abap_true.
cl_abap_unit_assert=>assert_equals(
act = mo_cut->is_import_allowed( c_cloud_package ) " existing cloud package
exp = iv_cloud ).
ENDIF.
cl_abap_unit_assert=>assert_equals(
act = mo_cut->is_import_allowed( 'Z_FOO_BAR' ) " non-existing package
exp = iv_new ).
ENDMETHOD.
METHOD is_import_allowed.
DATA lv_version TYPE string.
" Tests using ABAP language version "standard" only work if the required
" SAP class is available. In older releases, all packages will have
" ABAP language version "undefined" and are handled like a new package
mv_has_language_cfg = zcl_abapgit_oo_factory=>get_by_type( 'CLAS' )->exists( c_language_cfg ).
LOOP AT mt_versions INTO lv_version.
CASE lv_version.
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-undefined
OR zif_abapgit_dot_abapgit=>c_abap_language_version-ignore.
is_import_allowed_test(
iv_version = lv_version
iv_standard = abap_true
iv_cloud = abap_true
iv_new = abap_true ).
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-standard.
is_import_allowed_test(
iv_version = lv_version
iv_standard = abap_true
iv_cloud = abap_false
iv_new = abap_true ).
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-key_user.
is_import_allowed_test(
iv_version = lv_version
iv_standard = abap_false
iv_cloud = abap_false
iv_new = abap_true ).
WHEN zif_abapgit_dot_abapgit=>c_abap_language_version-cloud_development.
is_import_allowed_test(
iv_version = lv_version
iv_standard = abap_false
iv_cloud = abap_true
iv_new = abap_true ).
ENDCASE.
ENDLOOP.
ENDMETHOD.
METHOD check_abap_language_vers_same.
DATA ls_item TYPE zif_abapgit_definitions=>ty_item.
ls_item-obj_type = 'CLAS'.
ls_item-obj_name = 'ZCL_FOO_BAR'.
ls_item-abap_language_version = zif_abapgit_aff_types_v1=>co_abap_language_version-standard.
" Does not throw
zcl_abapgit_abap_language_vers=>check_abap_language_version(
iv_abap_language_version = zif_abapgit_aff_types_v1=>co_abap_language_version-standard
is_item = ls_item ).
ENDMETHOD.
METHOD check_abap_language_vers_diff.
DATA ls_item TYPE zif_abapgit_definitions=>ty_item.
ls_item-obj_type = 'CLAS'.
ls_item-obj_name = 'ZCL_FOO_BAR'.
ls_item-abap_language_version = zif_abapgit_aff_types_v1=>co_abap_language_version_src-standard.
TRY.
zcl_abapgit_abap_language_vers=>check_abap_language_version(
iv_abap_language_version = zif_abapgit_aff_types_v1=>co_abap_language_version_src-cloud_development
is_item = ls_item ).
cl_abap_unit_assert=>fail( ).
CATCH zcx_abapgit_exception ##NO_HANDLER.
ENDTRY.
ENDMETHOD.
ENDCLASS.

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<VSEOCLASS>
<CLSNAME>ZCL_ABAPGIT_ABAP_LANGUAGE_VERS</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>abapGit - ABAP Language Version</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>
<UNICODE>X</UNICODE>
<WITH_UNIT_TESTS>X</WITH_UNIT_TESTS>
</VSEOCLASS>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -0,0 +1,21 @@
CLASS zcl_abapgit_env_factory DEFINITION PUBLIC GLOBAL FRIENDS zcl_abapgit_env_injector.
PUBLIC SECTION.
CLASS-METHODS get_user_record
RETURNING
VALUE(ri_user_record) TYPE REF TO zif_abapgit_user_record.
PRIVATE SECTION.
CLASS-DATA gi_user_record TYPE REF TO zif_abapgit_user_record.
ENDCLASS.
CLASS zcl_abapgit_env_factory IMPLEMENTATION.
METHOD get_user_record.
IF gi_user_record IS NOT BOUND.
CREATE OBJECT gi_user_record TYPE zcl_abapgit_user_record.
ENDIF.
ri_user_record = gi_user_record.
ENDMETHOD.
ENDCLASS.

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<VSEOCLASS>
<CLSNAME>ZCL_ABAPGIT_ENV_FACTORY</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>abapGit - Environment Factory</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>
<UNICODE>X</UNICODE>
</VSEOCLASS>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -0,0 +1,14 @@
CLASS zcl_abapgit_env_injector DEFINITION PUBLIC.
PUBLIC SECTION.
CLASS-METHODS set_user_record
IMPORTING
!ii_user_record TYPE REF TO zif_abapgit_user_record.
ENDCLASS.
CLASS zcl_abapgit_env_injector IMPLEMENTATION.
METHOD set_user_record.
zcl_abapgit_env_factory=>gi_user_record = ii_user_record.
ENDMETHOD.
ENDCLASS.

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<VSEOCLASS>
<CLSNAME>ZCL_ABAPGIT_ENV_INJECTOR</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>abapGit - Environment Injector</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>
<UNICODE>X</UNICODE>
</VSEOCLASS>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -2,11 +2,11 @@ CLASS zcl_abapgit_environment DEFINITION
PUBLIC
FINAL
CREATE PRIVATE
GLOBAL FRIENDS zcl_abapgit_factory .
GLOBAL FRIENDS zcl_abapgit_factory.
PUBLIC SECTION.
INTERFACES zif_abapgit_environment .
INTERFACES zif_abapgit_environment.
PROTECTED SECTION.
PRIVATE SECTION.
@ -16,7 +16,7 @@ CLASS zcl_abapgit_environment DEFINITION
METHODS is_system_changes_allowed
RETURNING
VALUE(rv_result) TYPE abap_bool .
VALUE(rv_result) TYPE abap_bool.
ENDCLASS.
@ -76,11 +76,74 @@ CLASS zcl_abapgit_environment IMPLEMENTATION.
ENDMETHOD.
METHOD zif_abapgit_environment~check_parallel_processing.
" If check fails, see transactions RZ12
DATA:
lt_setup TYPE STANDARD TABLE OF rzllitab,
ls_setup LIKE LINE OF lt_setup,
lt_erfc_setup TYPE STANDARD TABLE OF rzlliclass,
lt_instances TYPE STANDARD TABLE OF msxxlist WITH DEFAULT KEY.
" Check if server group for parallel processing exists
CALL FUNCTION 'SMLG_GET_SETUP'
EXPORTING
grouptype = 'S'
TABLES
setup = lt_setup
erfc_setup = lt_erfc_setup
EXCEPTIONS
foreign_lock = 1
system_failure = 2
invalid_group_type = 3
OTHERS = 4.
IF sy-subrc <> 0.
RETURN.
ENDIF.
READ TABLE lt_setup INTO ls_setup WITH KEY classname = iv_group.
IF sy-subrc = 0 AND ls_setup-applserver IS NOT INITIAL.
" Check if assigned server instance exists
CALL FUNCTION 'TH_SERVER_LIST'
TABLES
list = lt_instances.
READ TABLE lt_instances TRANSPORTING NO FIELDS WITH KEY name = ls_setup-applserver.
IF sy-subrc = 0.
rv_checked = abap_true.
ENDIF.
ENDIF.
ENDMETHOD.
METHOD zif_abapgit_environment~compare_with_inactive.
rv_result = zif_abapgit_environment~is_sap_cloud_platform( ).
ENDMETHOD.
METHOD zif_abapgit_environment~get_available_user_sessions.
DATA:
lv_act_sessions TYPE i,
lv_max_sessions TYPE i,
lv_subrc TYPE sy-subrc.
CALL FUNCTION 'TH_USER_INFO'
IMPORTING
act_sessions = lv_act_sessions
max_sessions = lv_max_sessions
rc = lv_subrc.
IF lv_subrc = 0.
rv_sessions = lv_max_sessions - lv_act_sessions.
ENDIF.
ENDMETHOD.
METHOD zif_abapgit_environment~get_basis_release.
SELECT SINGLE release extrelease FROM cvers INTO (rs_result-release, rs_result-sp)
@ -89,6 +152,78 @@ CLASS zcl_abapgit_environment IMPLEMENTATION.
ENDMETHOD.
METHOD zif_abapgit_environment~get_system_language_filter.
DATA lv_translation_detective_lang TYPE spras.
DATA lv_pseudo_translation_language TYPE spras.
FIELD-SYMBOLS <ls_system_language_filter> LIKE LINE OF rt_system_language_filter.
" Translation Object Detective
" https://help.sap.com/docs/ABAP_PLATFORM_NEW/ceb25152cb0d4adba664cebea2bf4670/88a3d3cbccf64601975acabaccdfde45.html
CALL FUNCTION 'CONVERSION_EXIT_ISOLA_INPUT'
EXPORTING
input = '1Q'
IMPORTING
output = lv_translation_detective_lang
EXCEPTIONS
unknown_language = 1
OTHERS = 2.
IF sy-subrc = 1.
" The language for Translation Object Detective was not setup
ENDIF.
IF NOT lv_translation_detective_lang IS INITIAL.
APPEND INITIAL LINE TO rt_system_language_filter ASSIGNING <ls_system_language_filter>.
<ls_system_language_filter>-sign = 'E'.
<ls_system_language_filter>-option = 'EQ'.
<ls_system_language_filter>-low = lv_translation_detective_lang.
ENDIF.
" 1943470 - Using technical language key 2Q to create pseudo-translations of ABAP developments
" https://launchpad.support.sap.com/#/notes/1943470
CALL FUNCTION 'CONVERSION_EXIT_ISOLA_INPUT'
EXPORTING
input = '2Q'
IMPORTING
output = lv_pseudo_translation_language
EXCEPTIONS
unknown_language = 1
OTHERS = 2.
IF sy-subrc = 1.
" The language for Pseudo Translation was not setup
ENDIF.
IF NOT lv_pseudo_translation_language IS INITIAL.
APPEND INITIAL LINE TO rt_system_language_filter ASSIGNING <ls_system_language_filter>.
<ls_system_language_filter>-sign = 'E'.
<ls_system_language_filter>-option = 'EQ'.
<ls_system_language_filter>-low = lv_pseudo_translation_language.
ENDIF.
ENDMETHOD.
METHOD zif_abapgit_environment~init_parallel_processing.
DATA: lv_group TYPE rzlli_apcl.
lv_group = iv_group.
" SPBT_INITIALIZE gives error PBT_ENV_ALREADY_INITIALIZED if called
" multiple times in same session
CALL FUNCTION 'SPBT_INITIALIZE'
EXPORTING
group_name = lv_group
IMPORTING
free_pbt_wps = rv_free_work_processes
EXCEPTIONS
invalid_group_name = 1
internal_error = 2
pbt_env_already_initialized = 3
currently_no_resources_avail = 4
no_pbt_resources_found = 5
cant_init_different_pbt_groups = 6
OTHERS = 7 ##FM_SUBRC_OK.
" If SPBT_INITIALIZE fails, check transactions RZ12, SM50, SM21, SARFC
ENDMETHOD.
METHOD zif_abapgit_environment~is_merged.
DATA lr_marker TYPE REF TO data ##NEEDED.
@ -155,50 +290,6 @@ CLASS zcl_abapgit_environment IMPLEMENTATION.
ENDMETHOD.
METHOD zif_abapgit_environment~get_system_language_filter.
DATA lv_translation_detective_lang TYPE spras.
DATA lv_pseudo_translation_language TYPE spras.
FIELD-SYMBOLS <ls_system_language_filter> LIKE LINE OF rt_system_language_filter.
" Translation Object Detective
" https://help.sap.com/docs/ABAP_PLATFORM_NEW/ceb25152cb0d4adba664cebea2bf4670/88a3d3cbccf64601975acabaccdfde45.html
CALL FUNCTION 'CONVERSION_EXIT_ISOLA_INPUT'
EXPORTING
input = '1Q'
IMPORTING
output = lv_translation_detective_lang
EXCEPTIONS
unknown_language = 1
OTHERS = 2.
IF sy-subrc = 1.
" The language for Translation Object Detective was not setup
ENDIF.
IF NOT lv_translation_detective_lang IS INITIAL.
APPEND INITIAL LINE TO rt_system_language_filter ASSIGNING <ls_system_language_filter>.
<ls_system_language_filter>-sign = 'E'.
<ls_system_language_filter>-option = 'EQ'.
<ls_system_language_filter>-low = lv_translation_detective_lang.
ENDIF.
" 1943470 - Using technical language key 2Q to create pseudo-translations of ABAP developments
" https://launchpad.support.sap.com/#/notes/1943470
CALL FUNCTION 'CONVERSION_EXIT_ISOLA_INPUT'
EXPORTING
input = '2Q'
IMPORTING
output = lv_pseudo_translation_language
EXCEPTIONS
unknown_language = 1
OTHERS = 2.
IF sy-subrc = 1.
" The language for Pseudo Translation was not setup
ENDIF.
IF NOT lv_pseudo_translation_language IS INITIAL.
APPEND INITIAL LINE TO rt_system_language_filter ASSIGNING <ls_system_language_filter>.
<ls_system_language_filter>-sign = 'E'.
<ls_system_language_filter>-option = 'EQ'.
<ls_system_language_filter>-low = lv_pseudo_translation_language.
ENDIF.
ENDMETHOD.
METHOD zif_abapgit_environment~is_variant_maintenance.
@ -212,5 +303,4 @@ CLASS zcl_abapgit_environment IMPLEMENTATION.
rv_is_variant_maintenance = boolc( lines( lt_variscreens ) > 0 ).
ENDMETHOD.
ENDCLASS.

Some files were not shown because too many files have changed in this diff Show More