Transfer or update subsets with integrator job

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • Transfer or update subsets with integrator job

      Is there integrator load component that would allow me to transfer dimension subset from one environment to other? Or at least update existing subsets when dimension contents change?

      It seems that even though dimension subset is based on variable, it doesn't necessarily update itself when contents change. For example, I have production environment from which I want to transfer data (dimension and cube contents) into test environment. Transfer of contents is trivial, but it seems that subsets do not keep up with the change. Integrator extract then may give warning that certain element id is not available anymore. I suspect that this is due to fact that dimension contents have been updated and id's might have change in the process but subset doesn't update itself based on new contents.
    • I dug up that subsets are stored in text (xml) in cube #_SUBSET_GLOBAL (and LOCAL). When contents of the dimension change (especially with create), then dimension attributes get new id. However, subsets stored in cubes still have old reference id for attributes. Result is that subset attribute filter does not have corresponding attribute columns for it's use. Copying subset definition from other environment doesn't help when attribute id does not match.

      There probably isn't any integrator load that would work in similar way as dimension/cube loads, where element name can be used to insert data, regardless of id? Has anyone solved this sort of subset transfer with integrator so that new subset works with possibly new attribute ids?
    • Hi,
      one thing you can try might be to run a script (this is also possible in integrator using the Groovy API). When you create a script for dimension contents and include subsets, the xml is "translated" to include element names (i.e. you'd see a CELL_REPLACE script command in the script, and as value the translated xml). If you then re-run this script after modifying your dimension, it is translated back and would overwrite the previous subset xml which used the outdated ID's.