cancel
Showing results for 
Search instead for 
Did you mean: 

NOT EQUAL in the InfoPackage Data Selection

Former Member
0 Kudos

Hello,

<u><b>I need to build a NE, NOT EQUAL <> in an InfoPackage</u></b>

I need to exclude some DataSets from beeing loaded.

The DataSets to be excluded can be distinguished by a

certain value of a an InfoObject.

For example:

All DataSets with 0COMPANY_CODE NOT EQUAL "0001" should not

be loaded.

How can I set in the InfoPackage DataSelection a filter

to exclude some DataSets ?

Thank You

Martin Sautter

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

the best option is to to filter out in start routine.

or else if you knw for which selection you need to select you can place them.

Hope ths helps

Janardhan Kumar

Former Member
0 Kudos

Hello Janardhan,

I remember that their is the possibility to build an ABAP Routine in the

InfoPackage Selection of the InfoObject but I don't know how any to do more.

Do You ?

Thank You

Martin Sautter

Former Member
0 Kudos

Hi Martin,

The Infopackage level Routine can be written in Selection tab , by setting Type as 6.

But i dont think it will help you as it has only three options EQ Equals, BT Between and CP (Contain Pattern).

I dont know how to do in your case but giving an example case here

I need to introduce a routine for time interval in a BW infopackage. Here's what I need:

  • p_datefrom less than or equal to systemdate

  • p_dateto greater than or equal to systemdate

What's the code that I should use in the routine?

Here's how the current code looks like:

program conversion_routine.

  • Type pools used by conversion program

type-pools: rsarc, rsarr, rssm.

tables: rsldpsel.

  • Global code used by conversion rules

$$ begin of global - insert your declaration only below this line -

  • TABLES: ...

  • DATA: ...

$$ end of global - insert your declaration only before this line -

  • -------------------------------------------------------------------

form compute_time_dependent_dates

using p_infopackage type rslogdpid

changing p_datefrom type d

p_dateto type d

p_subrc like sy-subrc.

  • Insert source code to current selection field

$$ begin of routine - insert your code only below this line -

p_datefrom =

p_dateto =

*....

p_subrc = 0.

$$ end of routine - insert your code only before this line -

endform.

I am not sure how will you use it.

Hope it gives you some idea.

Thanks.

CK

Former Member
0 Kudos

Hello Chitrarth Kastwar ,

basically it would be a trivial task in SQL ....to code :

<i>

SELECT *

FROM

WHERE 0COMP_CODE not in '0001'

</i>

or

<i>

SELECT *

FROM

WHERE 0COMP_CODE = '0030'

OR 0COMP_CODE = '0040'

OR 0COMP_CODE = '0050'

</i>

.. but thats BW - It generates much turnaround for consultants :).

Thread

/community [original link is broken] threadID=507511&tstart=0

seems to be something like this.

...I get the following Conversion Routine for Type 6:

<i>

program conversion_routine.

  • Type pools used by conversion program

type-pools: rsarc, rsarr, rssm.

tables: rssdlrange.

  • Global code used by conversion rules

$$ begin of global - insert your declaration only below this line -

  • TABLES: ...

  • DATA: ...

$$ end of global - insert your declaration only before this line -

  • -------------------------------------------------------------------

  • InfoObject = ZVPUNITH

  • Fieldname = /BIC/ZVPUNITH

  • data type = CHAR

  • length = 000045

  • convexit =

  • -------------------------------------------------------------------

form compute_/BIC/ZVPUNITH

tables l_t_range structure rssdlrange

using p_infopackage type rslogdpid

p_fieldname type rsfnm

changing p_subrc like sy-subrc.

  • Insert source code to current selection field

$$ begin of routine - insert your code only below this line -

data: l_idx like sy-tabix.

read table l_t_range with key

fieldname = '/BIC/ZVPUNITH'.

l_idx = sy-tabix.

*....

modify l_t_range index l_idx.

p_subrc = 0.

$$ end of routine - insert your code only before this line -

endform.

</i>

Because I have to exclude 1 value out of 5 I can also include 5 values in the

selection criteria connected with OR

This means I have to use an OR only.

Is it possible with l_t_range to state this and how ?

Thank You

Martin Sautter

Answers (0)