cancel
Showing results for 
Search instead for 
Did you mean: 

ABAP to set "Switched on/off BIA indexes for queries" flag?

douglasmaltby
Participant
0 Kudos

Hi everyone,

Does anyone know if the "Switch on/off BIA Indexes for Queries" can be set for a specific cube by a delivered ABAP?

Here's my scenario. We go live with BIA next Monday 9/22. I've indexed our cubes in production BIA this past weekend and they're rolled up nightly. Until the go-live, I've manually set the "Switched Off for Queries" flag via RSDDBIAMON > BI Accelerator > Index Settings > Switch on/off BIA Indexes for Queries".

However, one indexed cube is deleted fully every night by the flag in the full load infopackage. In testing, I saw that the BIA fact table index was fully deleted when the E and F tables of the cube were truncated, and then reindexed when the full package is loaded and rolled up. This is all ok.

The issue is that after the delete, load and rollup, the "Switched Off for Queries" flag is not set. I have had to manually reset to off in the morning. This won't be an issue (hopefully) once we go live, but it does seem like a bug and I'll likely submit a customer message. I would think the delete, index and rollup process should not change the status of this flag.

Does anyone know if that flag can be programatically set?

Thanks for any advice,

Doug

Accepted Solutions (1)

Accepted Solutions (1)

Vitaliy-R
Developer Advocate
Developer Advocate
0 Kudos

Hi Doug,

The setting is stored in the table RSDDTREXDIR field OBJSTAT (ACT or INA).

There is no funciton module, but (welcome to OO world! method SET_OBJSTAT of the class CL_RSDDTREX_AGGREGATE.

I believe that what happens is that processing for the cube overwrites the setting done manually, because it changes status ACT->INA at the beginning (which is already set manually), and then back INA->ACT at the end (overwriting manual setting). That's my assumption.

Good luck with go live!

Regards,

-Vitaliy

Edited by: Vitaliy on Sep 18, 2008 4:14 PM

douglasmaltby
Participant
0 Kudos

Thanks, Vitaliy!

I think you're exactly right. Its seems to be a bug in processing of just this specific type of index reprocessing, e.g. dropping and reindexing. The indexing process properly retains INA status on the other delta indexed cubes.

I'm barely ABAP OO literate, but do understand enough to find, review and test the class and method code. Thanks for finding it!

Also, I reviewed table RSDDTREXDIR and it is correct/current. It does spawn another question, though. The field ITYPE (Type of BIA Index) is consistently ICB exept for 2 cubes/indexes, which are typed as PA2 and PA9. When I check possible values on the domain, RSDDTREX_TAGGR_TYPE, it only lists ICB and ICF (Infocube - flat).

Any idea what types PA2 and PA9 are, and why these 2 cubes would be different? From my perspective, they're basic infocubes, same as all the others.

Thanks again,

Doug

former_member93896
Active Contributor
0 Kudos

Hi Doug,

not all InfoCubes are created equal. The possible BIA index types are listed in type-pool RSDTR. Basic indexes are the default. If exactly one dimension (but not several) are bigger than 20% of the total fact table (F+E) then the system creates a flat index (type PA). The third letter is the id of the dimension.

Regards,

Marc

SAP NetWeaver RIG

Vitaliy-R
Developer Advocate
Developer Advocate
0 Kudos

Hi Marc,

I knew about flat indexes, but hadn't seen them before. From your post I understood that we shouldn't really see 'ICF' in this table, but only 'PAx'?

Type-pool RSDTR in BI7.0 SP17 shows only ICB and ICF, but I suppose you see more if you have access to BI development box.

One more question: is it possible, that BIA converts ICB into ICF or other way around during reorg job, or this can be done only thru re-indexing? (supposing condition of >20% has changed during InfoCube's life?

Thanks,

-Vitaliy

Former Member
0 Kudos

Dear Experts,

Iam new to BIA. forgive me if my questions seem simple.

Does the table RSDDTREXDIR give list of all infocubes on which BIA indexes are maintained?

if yes , What does the "Obj Stat" field in this table signify (OR what is the difference between Obj Stat = "Off" and Obj Stat = "INA")

Regards,

Kris

former_member188886
Participant
0 Kudos

This has changed in BW 7.3.

In BW 7.3 Table RSDDBOBJDIR - BIA Index Objects has replaced table RSDDTREXDIR.

Also there are new Class / methods:

Class: CL_RSDDB_OBJ

Methods:

GET_BIAINDEX_OBJSTAT <-To get status

SET_BIAINDEX_OBJSTAT <- To set status (ACT or INA)

Would be nice if SAP deliverd an ABAP to do this in the background or a Process Chain Type.

Jay Roble

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Douglas,

You can switch On/Off this flag by changing the value of field NOHPA in the table RSRREPDIR. Maintenance is allowed for this table.

Regards,

Praveen

Vitaliy-R
Developer Advocate
Developer Advocate
0 Kudos

Hi Praveen,

This is for the query. Doug's question is how to do this on a cube level I had no time to look into that yet.

Cheers,

-Vitaliy

Former Member
0 Kudos

Sorry, I forgot to mention that this table will deal at query level

But Infocube is also one of the selection fields in this table and probably programatically we can set this field for all the related queries. Though this may not be the best way of achieving this.

Regards,

Praveen