on ‎2019 Sep 14 9:48 PM
Hi Dear ABAP Developer,
I would like add to my code a Special character logic. i need like this; if corresponding field had Null from Table (zabwp017), output should star '*'. its help me, that the user is authenticated all values. Could anyone help me for edit this code?
Table ZAWP017 :

Exampe : Testuser3 has authentication all of the "Sales_Grp" beucause there is NULL.
My Code worked, but i need *(Star) Logic.
another question:
I use BW on HANA. I got a Warning if i using statement "Select * from *.
WHEN 'Z0SALES_OFF_MC'.
IF i_step EQ '0'.
CALL FUNCTION 'RSEC_GET_USERNAME'
IMPORTING
e_username = l_username.
REFRESH lt_abwp017.
SELECT * FROM zabwp017 INTO TABLE lt_abwp017 WHERE s_bbiuser = l_username
AND s_bberanz >= 1 .
IF sy-subrc = 0.
LOOP AT lt_abwp017 INTO wa_abwp017.
CLEAR: l_s_range.
l_s_range-low = wa_abwp017-sales_off.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
APPEND l_s_range TO e_t_range.
CLEAR wa_abwp017.
ENDLOOP.
ENDIF.
ENDIF.
Thanks Alot
Sascha
Request clarification before answering.
Try this:
WHEN 'Z0SALES_OFF_MC'.
IF i_step EQ '0'.
CALL FUNCTION 'RSEC_GET_USERNAME'
IMPORTING
e_username = l_username.
REFRESH lt_abwp017.
SELECT * FROM zabwp017 INTO TABLE lt_abwp017 WHERE s_bbiuser = l_username
AND s_bberanz >= 1 .
IF sy-subrc = 0.
LOOP AT lt_abwp017 INTO wa_abwp017.
CLEAR l_s_range.
IF wa_abwp017-sales_off IS NOT INITIAL.
DELETE lt_abwp017 WHERE sales_off = ''.
l_s_range-low = lt_abwp017-sales_off.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
APPEND l_s_range TO e_t_range.
ELSE.
l_s_range-low = '*'.
l_s_range-sign = 'I'.
l_s_range-opt = 'EQ'.
APPEND l_s_range TO e_t_range.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.Regards,
Loed
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thx Alot its work..
i have a warning like this : need a pseudo code?
Database features are functional enhancements in Open SQL that are no longer implementedon alldatabases. ... The name of thedatabase featurespecified in the warning is defined as a constant in the class CL_ABAP_DBFEATURES.
or should i ignore it?
thanks you..
don't understand why you have to delete inside loop, and you should set the correct value of opt for *. also when someone have ALL authorization, there is no use of loop.
| User | Count |
|---|---|
| 7 | |
| 6 | |
| 5 | |
| 4 | |
| 3 | |
| 3 | |
| 3 | |
| 2 | |
| 2 | |
| 2 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.