mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 12:20:51 +08:00
fix for serialize view cluster inactive/not exits (#2339)
* add missing functions in plugin VCLS * fix pretty print * fix check usage for abaplint * adjust detection of locks * german type
This commit is contained in:
parent
ad7809e4f2
commit
96edce7e96
|
@ -5,10 +5,19 @@ CLASS zcl_abapgit_object_vcls DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
|
||||
PROTECTED SECTION.
|
||||
PRIVATE SECTION.
|
||||
* See include MTOBJCON:
|
||||
CONSTANTS: c_cluster_type TYPE c VALUE 'C'.
|
||||
CONSTANTS: c_mode_insert TYPE obj_para-maint_mode VALUE 'I'.
|
||||
|
||||
* See include MTOBJCON:
|
||||
CONSTANTS c_cluster_type TYPE c VALUE 'C' ##NO_TEXT.
|
||||
CONSTANTS c_mode_insert TYPE obj_para-maint_mode VALUE 'I' ##NO_TEXT.
|
||||
|
||||
METHODS check_lock
|
||||
IMPORTING
|
||||
!iv_tabname TYPE tabname
|
||||
!iv_argument TYPE seqg3-garg
|
||||
RETURNING
|
||||
VALUE(rv_is_locked) TYPE abap_bool
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
|
@ -16,6 +25,26 @@ ENDCLASS.
|
|||
CLASS ZCL_ABAPGIT_OBJECT_VCLS IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD check_lock.
|
||||
|
||||
DATA:
|
||||
ls_rstable_key TYPE rstable, " Lock argument for table RSTABLE
|
||||
lv_argument TYPE eqegraarg.
|
||||
|
||||
" Set Values for generic table lock
|
||||
ls_rstable_key-tabname = iv_tabname.
|
||||
ls_rstable_key-varkey = iv_argument.
|
||||
|
||||
" include all sub keys
|
||||
lv_argument = ls_rstable_key.
|
||||
lv_argument = lv_argument && '*'.
|
||||
|
||||
rv_is_locked = exists_a_lock_entry_for( iv_lock_object = 'E_TABLEE'
|
||||
iv_argument = lv_argument ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_object~changed_by.
|
||||
rv_user = c_user_unknown. " todo
|
||||
ENDMETHOD.
|
||||
|
@ -121,11 +150,6 @@ CLASS ZCL_ABAPGIT_OBJECT_VCLS IMPLEMENTATION.
|
|||
|
||||
rv_bool = boolc( sy-subrc = 0 ).
|
||||
|
||||
IF lv_changedate IS INITIAL.
|
||||
* same logic as in function module VIEWCLUSTER_GET_DEFINITION
|
||||
rv_bool = abap_false.
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
|
@ -141,13 +165,44 @@ CLASS ZCL_ABAPGIT_OBJECT_VCLS IMPLEMENTATION.
|
|||
|
||||
|
||||
METHOD zif_abapgit_object~is_active.
|
||||
rv_active = is_active( ).
|
||||
|
||||
DATA lv_changedate TYPE vcldir-changedate.
|
||||
|
||||
SELECT SINGLE changedate INTO lv_changedate FROM vcldir
|
||||
WHERE vclname = ms_item-obj_name.
|
||||
|
||||
IF lv_changedate IS NOT INITIAL.
|
||||
* see logic in function module VIEWCLUSTER_GET_DEFINITION
|
||||
rv_active = abap_true.
|
||||
ELSE.
|
||||
rv_active = abap_false.
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_object~is_locked.
|
||||
|
||||
rv_is_locked = abap_false.
|
||||
DATA:
|
||||
ls_vcldir TYPE vcldir,
|
||||
ls_vcldirt TYPE vcldirt,
|
||||
|
||||
lv_argument TYPE seqg3-garg,
|
||||
lv_argument_langu TYPE seqg3-garg.
|
||||
|
||||
lv_argument = me->ms_item-obj_name.
|
||||
lv_argument_langu = |@{ me->ms_item-obj_name }|.
|
||||
|
||||
"Check all relevant maintein tabeles for view clusters
|
||||
IF check_lock( iv_tabname = 'VCLDIR' iv_argument = lv_argument ) = abap_true
|
||||
OR check_lock( iv_tabname = 'VCLDIRT' iv_argument = lv_argument_langu ) = abap_true
|
||||
OR check_lock( iv_tabname = 'VCLSTRUC' iv_argument = lv_argument ) = abap_true
|
||||
OR check_lock( iv_tabname = 'VCLSTRUCT' iv_argument = lv_argument_langu ) = abap_true
|
||||
OR check_lock( iv_tabname = 'VCLSTRUC' iv_argument = lv_argument ) = abap_true
|
||||
OR check_lock( iv_tabname = 'VCLMF' iv_argument = lv_argument ) = abap_true.
|
||||
|
||||
rv_is_locked = abap_true.
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
|
|
@ -12,6 +12,14 @@
|
|||
<FIXPT>X</FIXPT>
|
||||
<UNICODE>X</UNICODE>
|
||||
</VSEOCLASS>
|
||||
<DESCRIPTIONS>
|
||||
<SEOCOMPOTX>
|
||||
<CLSNAME>ZCL_ABAPGIT_OBJECT_VCLS</CLSNAME>
|
||||
<CMPNAME>CHECK_LOCK</CMPNAME>
|
||||
<LANGU>E</LANGU>
|
||||
<DESCRIPT>check if lock entry exits</DESCRIPT>
|
||||
</SEOCOMPOTX>
|
||||
</DESCRIPTIONS>
|
||||
</asx:values>
|
||||
</asx:abap>
|
||||
</abapGit>
|
||||
|
|
Loading…
Reference in New Issue
Block a user