cancel
Showing results for 
Search instead for 
Did you mean: 

Initial value of 0FISCPER is replaced wrongly

0 Kudos
166

Hi, after upgrade to BW7.50 SP029 we are faced with the problem, that our exit-variable using initial query proposed value "#" is replaced to "000000". That leads to an error in our coding as it is not interpreted as initial value nor as "#" anymore.

Does anyone have an idea?

  METHOD bi_f_ce_za_0fiscper_006.
* Deklaration
    DATA:
      ls_var_range LIKE LINE OF it_var_range,
      ls_range     TYPE rrrangesid,
      lv_bool      TYPE i.

* Initialisierung
    CLEAR ls_var_range.
    CLEAR ls_range.

* Aus dem Intervall Periode/Geschäftsjahr die Differenz der Anzahl Perioden ermitteln
    READ TABLE it_var_range WITH KEY vnam cv_bi_ma_i_o_0fiscper_001 INTO ls_var_range.

    IF ls_var_range-low eq '#'
    OR ls_var_range-low IS INITIAL.
      lv_bool 0.
    ELSE.
      lv_bool 1.
    ENDIF.

    CLEAR ls_range.
    ls_range-sign  'I'.
    ls_range-opt  'EQ'.

    ls_range-low lv_bool.

    APPEND ls_range TO et_range.

  ENDMETHOD.

 

Regards,

Peter

View Entire Topic
Savio_Dmello
Active Participant

how is  cv_bi_ma_i_o_0fiscper_001 variable populated?  As per my knowledge, empty value in 0FISCPER is treated as 0000000. I think its 7 zeros for YYYYMMM and not 6. 

Many of the standard code changes after upgrade so it's very tough to tell why it happened. May be something to do with standard conversion exit for 0FISCPER.

if you want quick fix, you should modify your ABAP exit logic to handle "0000000" as an initial or empty value along with "#". You can update the condition to treat both "0000000" and "#" as initial values, depending on your specific scenario.

Eg

* Treat both "#" and "0000000" as initial values
IF ls_var_range-low EQ '#'
OR ls_var_range-low EQ '0000000'
OR ls_var_range-low IS INITIAL.
lv_bool = 0.
ELSE.
lv_bool = 1.
ENDIF.

0 Kudos
Hi Savio, thanks a lot for your reply. That will be the way we go. We will change the coding. I found note 3144996 and this looks your help. It confirms my fears that a massive change in code was done and change of logic. And I found note 3144996. That will be a massive change.