SELECT SINGLE PROCESSINGSTATUS FROM I_ENTERPRISEPROJECT INTO @DATA(LV_STATUS_IN)
WHERE PROJECT = @ENTERPRISEPROJECT-PROJECT.
IF LV_STATUS_IN = '00' OR LV_STATUS_IN IS INITIAL. “active status
IF ENTERPRISEPROJECT-PROCESSINGSTATUS = '10'. “current processing status
SELECT SINGLE * FROM I_FINANCIALPLANNINGENTRYITEM
INTO @DATA(LS_FIN) WHERE PLANNINGCATEGORY = 'BUDGET02' AND PROJECTINTERNALID = @ENTERPRISEPROJECT-PROJECTINTERNALID.
IF SY-SUBRC = 0.
DATA : LV_KSL TYPE I.
LV_KSL = LS_FIN-AMOUNTINGLOBALCURRENCY.
ELSEIF LV_KSL IS INITIAL.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGECLASS = '/S4PPM/VAL_DET'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGETYPE = 'E'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGENUMBER = '000'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGEVARIABLE1 = 'PROJECT CANNOT RELEASE WITHOUT BUDGET'.
APPEND LS_VALIDATIONMESSAGE TO VALIDATIONMESSAGES.
CLEAR LS_VALIDATIONMESSAGE.
ENDIF.
ENDIF.
ENDIF.
SELECT SINGLE PROCESSINGSTATUS FROM I_ENTERPRISEPROJECTELEMENT INTO @DATA(LV_STATUS_IN)
WHERE PROJECTELEMENT = @ENTERPRISEPROJECTELEMENT-PROJECTELEMENT.
IF LV_STATUS_IN = '00' OR LV_STATUS_IN IS INITIAL. “active status
IF ENTERPRISEPROJECTELEMENT-PROCESSINGSTATUS = '10'. “current processing status
SELECT SINGLE AMOUNTINGLOBALCURRENCY FROM I_FINANCIALPLANNINGENTRYITEM
INTO @DATA(LV_KSL) WHERE PLANNINGCATEGORY = 'BUDGET02' AND WBSELEMENTINTERNALID = @ENTERPRISEPROJECTELEMENT-WBSELEMENTINTERNALID.
IF LV_KSL IS INITIAL.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGECLASS = '/S4PPM/VAL_DET'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGETYPE = 'E'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGENUMBER = '000'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGEVARIABLE1 = 'WORKPACKAGE CANNOT RELEASE WITHOUT BUDGET'.
APPEND LS_VALIDATIONMESSAGE TO VALIDATIONMESSAGES.
CLEAR LS_VALIDATIONMESSAGE.
ENDIF.
ENDIF.
ENDIF.
DATA(CURRENT_USER) = CL_ABAP_CONTEXT_INFO=>GET_USER_TECHNICAL_NAME( ).
SELECT SINGLE * FROM YY1_USERID INTO @DATA(LV_USER) WHERE USERDATA = @CURRENT_USER. “YY1_USERID IS CDS
IF SY-SUBRC <> 0.
IF ENTERPRISEPROJECT-PROCESSINGSTATUS = '10'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGECLASS = '/S4PPM/VAL_DET'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGETYPE = 'E'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGENUMBER = '000'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGEVARIABLE1 = 'USER IS NOT AUTHORIZED TO RELEASE THE PROJECT'.
APPEND LS_VALIDATIONMESSAGE TO VALIDATIONMESSAGES.
CLEAR LS_VALIDATIONMESSAGE.
ENDIF.
ENDIF.
DATA(CURRENT_USER) = CL_ABAP_CONTEXT_INFO=>GET_USER_TECHNICAL_NAME( )."
SELECT SINGLE * FROM YY1_USERID INTO @DATA(LV_USER) WHERE USERDATA = @CURRENT_USER.
IF SY-SUBRC <> 0.
IF ENTERPRISEPROJECTELEMENT-PROCESSINGSTATUS = '10'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGECLASS = '/S4PPM/VAL_DET'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGETYPE = 'E'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGENUMBER = '000'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGEVARIABLE1 = 'USER IS NOT AUTHORIZED TO RELEASE THE WORKPACKAGE'.
APPEND LS_VALIDATIONMESSAGE TO VALIDATIONMESSAGES.
CLEAR LS_VALIDATIONMESSAGE.
ENDIF.
ENDIF.
SELECT SINGLE * FROM YY1_VALIDATIONMESSAGE INTO @DATA(LV_MSG) WHERE CODE = '001'.
“YY1_VALIDATIONMESSAGE IS CDS OF CUSTOM CODE LIST
LS_VALIDATIONMESSAGE-SYSTEMMESSAGETYPE = 'E'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGENUMBER = '000'.
LS_VALIDATIONMESSAGE-SYSTEMMESSAGEVARIABLE1 = LV_MSG-DESCRIPTION.
APPEND LS_VALIDATIONMESSAGE TO VALIDATIONMESSAGES.
CLEAR LS_VALIDATIONMESSAGE.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
6 | |
5 | |
3 | |
2 | |
2 | |
1 |