cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

User parameter value functionality

jesperw
Discoverer
0 Likes
863

Hi all you smart people

If I have a user parameter, from Customer Activity Repository: /posdw/analysis_flag, with the value of S.

Is there a place where I can view what the parameter does, and what other values it could have?

So that I can evaluate the consequences of adding it to users.

Hope you can help

Accepted Solutions (0)

Answers (1)

Answers (1)

michael_piesche
Active Contributor
0 Likes

I checked on a CAR system that is currently SAP CARAB 4.0 FPS01 (04/2019):

To find what I was looking for, I did an ABAP Search Scan (Report RS_ABAP_SOURCE_SCAN) in SAP Logon of SAP CAR with search string /posdw/analysis_flag and limited to packages that start with /POSDW/*.

Based on my analysis, I assume, that this is for transaction data that comes from POS with a status, and with that parameter, you have the option to change the status of the POS transaction in CAR, because you, being a super user, know what you are doing. Otherwise the status of the POS transaction can not be changed manually.

Possible values for the parameter /posdw/analysis_flag:

  • X and D leads to /POSDW/CL_DEBUG_INFO=>C_MODE_DIAG 'D'
  • S leads to /POSDW/CL_DEBUG_INFO=>C_MODE_SUPER 'S'
    but only if also the authorization object W_POS_SUSR with change permission is given
    otherwise this setting also behaves like X and D
  • any other value leads to /POSDW/CL_DEBUG_INFO=>C_MODE_NORMAL 'N'
  • By coding, there is currently only a specific handling of the "Super User" (S with authorization), there is no difference in functionality for all other settings or authorizations
    original comment in coding 😉
    * super users know what they do... (no check necessary)

The flag and authorization object are checked for "Change Task Status of Transaction" in the following codings:

  • FM /POSDW/CHECK_STATUSCHANGE_MAN - Check whether manual change of the task status is permitted
  • FM /POSDW/CHECK_STATUSCHANGE - Check whether change of task status is permitted
  • CL /POSDW/CL_TASKSTATUS
    Method GET_STATUS_CHANGE_TAB
    Method CHECK_STATUSCHANGE

Parameter is read in Class /POSDW/CL_DEBUG_INFO in Method GET_ANALYSIS_MODE:

method get_analysis_mode.
  if analysis is initial.
    get parameter id '/POSDW/ANALYSIS_FLAG'
      field analysis.
    case analysis.
      when 'X' or 'D'.
        analysis = c_mode_diag.
      when 'S'.
        authority-check object 'W_POS_SUSR'
                 id 'ACTVT' field '02'.
        if sy-subrc eq 0.
          analysis = c_mode_super.
        else.
          analysis = c_mode_diag.
        endif.
      when others.
        analysis = c_mode_normal.
    endcase.
  endif.
  r_analysis = analysis.
endmethod.
michael_piesche
Active Contributor
0 Likes

jesperw, please follow up on your open question.

  • comment answers or your question if there are still open issues.
  • otherwise mark an answer as accepted if it helped you solve your problem
  • or post an answer of yourself and accept it if you found another useful solution yourself
  • or redirect your question to another question that is related and was useful to solve your problem
  • in the end, close your question