Below is the example of using the ChangeDimSelection operation to complement selection of a dictionary instance with selection of another dictionary. The request contains moniker of the initial dictionary, which selection must be changed, and moniker of the source dictionary, which selection must be added. The response contains summary information about selected elements obtained after combining two selections.
{
"ChangeDimSelection" :
{
"tDim" :
{
"id" : "S1!M!S!S4"
},
"tArg" :
{
"elSelectOp" : "Unknown",
"elRelative" : "Unknown",
"assign" :
{
"source" :
{
"@type" : "q1:ChangeDimSelectionResult",
"id" : "S1!M!S!S5",
"selectionInfo" :
{
"firstSelected" :
{
"n" : "Second element",
"a" :
{
"it" :
[
"Second element",
"2",
"2",
"1",
"A000124"
]
},
"ea" :
{
"it" :
[
{
"@v" : "Second element"
},
{
"@v" : "2"
},
{
"@v" : "2"
},
{
"@v" : "1"
},
{
"@v" : "A000124"
}
]
},
"k" : "2",
"h" : "false",
"o" : "1"
},
"lastSelected" :
{
"n" : "Third element",
"a" :
{
"it" :
[
"Third element",
"3",
"3",
"2",
"A000125"
]
},
"ea" :
{
"it" :
[
{
"@v" : "Third element"
},
{
"@v" : "3"
},
{
"@v" : "3"
},
{
"@v" : "2"
},
{
"@v" : "A000125"
}
]
},
"k" : "3",
"h" : "false",
"o" : "2"
},
"selectedCount" : "2",
"schema" :
{
"k" : "4294967295",
"vis" : "true",
"applyOnlyOnce" : "false",
"onceApplied" : "false",
"applyImmediate" : "true",
"applyOnRebuild" : "false"
},
"group" :
{
"k" : "157",
"id" : "GROUP1",
"n" : "Group of elements (according to list)",
"vis" : "true"
}
}
},
"append" : "true",
"keepGroup" : "true",
"keepSchema" : "true"
}
}
}
}
{
"ChangeDimSelectionResult" :
{
"id" : "S1!M!S!S4",
"selectionInfo" :
{
"firstSelected" :
{
"n" : "First element",
"a" :
{
"it" :
[
"First element",
"1",
"1",
"0",
"A000123"
]
},
"ea" :
{
"it" :
[
{
"@v" : "First element"
},
{
"@v" : "1"
},
{
"@v" : "1"
},
{
"@v" : "0"
},
{
"@v" : "A000123"
}
]
},
"k" : "1",
"h" : "0",
"o" : "0"
},
"lastSelected" :
{
"n" : "Third element",
"a" :
{
"it" :
[
"Third element",
"3",
"3",
"2",
"A000125"
]
},
"ea" :
{
"it" :
[
{
"@v" : "Third element"
},
{
"@v" : "3"
},
{
"@v" : "3"
},
{
"@v" : "2"
},
{
"@v" : "A000125"
}
]
},
"k" : "3",
"h" : "0",
"o" : "2"
},
"selectedCount" : "3",
"schema" :
{
"k" : "4294967295",
"vis" : "1",
"applyOnlyOnce" : "0",
"onceApplied" : "0",
"applyOnRebuild" : "0"
}
}
}
}
public static ChangeDimSelectionResult AppendSelection(string moniker, DmId source)
{
var somClient = new SomPortTypeClient(); //Proxy object for operation execution
//Operation execution parameters
var tSel = new ChangeDimSelection()
{
tArg = new ChangeDimSelectionArg()
{
assign = new DmSelectionAssignArg()
{
append = true,
keepGroup = true,
keepSchema = true,
source = source
}
},
tDim = new DmId() { id = moniker }
};
//Change selection
var result = somClient.ChangeDimSelection(tSel);
return result;
}
See also: