Below is the example of using the OpenPrx operation to open a regular report for edit. The request contains moniker of the object that is a regular report and a flag indicating whether the report must be opened for edit. The response contains the opened regular report instance moniker. Any additional data is not extracted.
{ "OpenPrx" : { "tObject" : { "id" : "S1!M!6334" }, "tArg" : { "args" : { "openForEdit" : "true" } } } }
{ "OpenPrxResult" : { "id" : { "id" : "S1!M!S!P2" } } }
The OpenPrxForEdit function specified below opens a regular report for edit. The repository connection moniker and report identifier are sent as input parameters. The function body contains a flag indicating that the report must open for edit. The example uses the FindObjectById function, which code is given in the Getting Object Description by Its Identifier example. The result of the operation is the result of the function.
public static OpenPrxResult OpenPrxForEdit(MbId mb, string prxId) { var somClient = new SomPortTypeClient(); //Proxy object for operation execution //Search repository object var prxObj = FindObjectById(mb, prxId); //Operation execution parameters var tOpen = new OpenPrx() { tArg = new OpenPrxArg() { args = new PrxOpenArgs() { openForEdit = true } }, //Form object moniker tObject = new OdId() { id = mb.id + "!" + prxObj.k } }; //Open regular report var result = somClient.OpenPrx(tOpen); return result; }
See also: