I am struggling to learn  to create queries(using variables)

Hi all,
I am struggling to learn  to create queries(using variables)
I want to learn from basics to all existing technics.
(eg of each variable types and process types).
if you have any docs please mail to <REMOVED>.
thanks,
BW Cheta

check these links.
http://www.sd-solutions.com/documents/SDS_BW_Replacement%20Path%20Variables.html
http://help.sap.com/saphelp_nw04/helpdata/en/3f/89533e5ff4d064e10000000a114084/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/2c/78a03c1178ad2ce10000000a114084/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/af/809528939d5b4fbff7e16a5bdc0d85/content.htm
http://help.sap.com/search/highlightContent.jsp
http://help.sap.com/saphelp_nw04s/helpdata/en/e3/e60138fede083de10000009b38f8cf/frameset.htm
http://help.sap.com/saphelp_nw04s/helpdata/en/e3/e60138fede083de10000009b38f8cf/frameset.htm
http://help.sap.com/saphelp_nw04s/helpdata/en/e3/e60138fede083de10000009b38f8cf/frameset.htm
http://help.sap.com/saphelp_nw04s/helpdata/en/e3/e60138fede083de10000009b38f8cf/frameset.htm
thanks
kevin.

Similar Messages

  • Dynamically creating file using variable

    HI, i am facing an issue in creating file on run time using variable.
    i have a variable FileName. In refresh tab i have written a query like SELECT TO_CHAR(SYSDATE,'YYYY,MM,DD') || 'TEST' FROM DUAL. i tested the variable and its value is correct.
    i have created an interface to extract the data from table and store it in file. i have assigned variable FileName to the file.
    Now when i run the interface...the file is created but the header is created in different file and its name is ambiguous e,g(19) and the data is placed in other file with the name which is the value of variable FileName.....
    ISSUE is two ODI creates two files one for header only and other for data....
    when i run my interface in a package the file created perfectly ..... but i dun want to use package i want to create file through running interface only

    one file name is some number like 19.txt and other filename is 20121211_TEST.txt (this name is coming from variable).....
    however when i create a package with variable and interface,only one file is created 20121211_TEST.txt (header and data are not created in separate files.)
    create header     (ID,
         NAME,
         DEPT)
    /*$$SNPS_START_KEYSNP$CRDWG_TABLESNP$CRTABLE_NAME=TARGET_FILESNP$CRLOAD_FILE=*E:\tempProj/19*SNP$CRFILE_FORMAT=DSNP$CRFILE_SEP_FIELD=0x007eSNP$CRFILE_SEP_LINE=0x000D0x000ASNP$CRFILE_FIRST_ROW=0SNP$CRFILE_ENC_FIELD=SNP$CRFILE_DEC_SEP=SNP$CRSNP$CRDWG_COLSNP$CRCOL_NAME=IDSNP$CRTYPE_NAME=STRINGSNP$CRORDER=1SNP$CRLINE_OFFSET=1SNP$CRLENGTH=50SNP$CRPRECISION=50SNP$CRSNP$CRDWG_COLSNP$CRCOL_NAME=NAMESNP$CRTYPE_NAME=STRINGSNP$CRORDER=2SNP$CRLINE_OFFSET=51SNP$CRLENGTH=50SNP$CRPRECISION=50SNP$CRSNP$CRDWG_COLSNP$CRCOL_NAME=DEPTSNP$CRTYPE_NAME=STRINGSNP$CRORDER=3SNP$CRLINE_OFFSET=101SNP$CRLENGTH=50SNP$CRPRECISION=50SNP$CR$$SNPS_END_KEY*/
    Edited by: 975356 on Dec 11, 2012 10:57 PM
    Edited by: 975356 on Dec 11, 2012 10:58 PM

  • Problem while creating queries using SQVI

    Guys,
    I have many diff versions of sap's. 4.6c, 4.7, 4.7uc, 5.0, 5.0uc and so on......
    I have to few queries in 4.7 in SQVI, i have to make it in sync in all the othr servers.
    I have created all of them in all servers, but while creating in 4.6c, when i am using option "table Join" while creating query in SQVI, the system doesnt take me to next screen.
    What could be the problem. Its going to next screen when i use option "table" but not when i use "table joins".
    Can v transport these queries ( i mean SQVI queries, not those in sq01 ).
    Helppp..................

    used table view

  • Create XML using variables (dynamically)

    Ive searched and so far not finding results. Can you create an xml file dynamically in AS3.
    public class XmlWriter extends MovieClip{
    private var myXMLRoot:String;
    public function XmlWriter(xmlRootName:String){
    myXMLRoot = xmlRootName
    public writeXML():{
    var temp:XML = new XML(<xmlRootName></xmlRootName> ) //where xmlRootName is the string set when the class is created
    is the above possible? If so how would you do it?

    var nodeName:String = "myNodeName";
    var attributeName:String = "myAttributeName";
    var attributeValue:String = "myAttributeValue";
    var xml:XML = <{nodeName} {attributeName}={attributeValue} />;
    trace(xml.toXMLString());
    // output: <myNodeName myAttributeName="myAttributeValue"/>

  • Creating and using variables in LabView

    Hello. Apologies in advance for what probably is a trivial task, but I'm having problems grasping the concept of variables in the LabView environment.
    I'm using Motion to track the steps that a motor has traversed. I have an inkjet that I want to apply a quick burst only once for a pixel (which I defined the size). The problem is that the motor has to travel at such a slow speed that the inkjet is over the pixel for a while. With my current code, it will keep firing while over the pixel. So I want to store the last pixel number that the printer fired on so I can perform a compare to ensure that the inkjet will only fire once the current pixel is greater than the last-fired pixel.
    In a regular text-based coding environment, it's as easy as assigning a variable to store the pixel that the inkjet fired on, then constantly compare the current pixel location to that variable to know if it's still over the same pixel. I'm a bit of a loss trying to accomplish the same task using the graphical coding of LabView.
    How do I extract this value and store it for later comparison?
    Thank you and sorry again for a dumb question.

    I assume that you are doing this firing of inkjet at a particular pixel, using a loop ( more appropriately, while loop)
    One way to achieve this would be to use shift registers and case structure
    Insert a shift register for that loop
    initialize a pixel value (numeric) to that shift register
    On every iteration, perform comparison for 'greater than' with current pixel value/position  to value/position stored in shift register
    If the result of this comparison is true, use a case structur. In true case of case structure , fire your inkjet at that particular pixel and update your shift register to replace and store the current value
    If the result of comparison was false, do not perform any operation, just pass the shift register through false case without any modification
    A labVIEW code built on these lines would work fine for your application
    Showing a code snippet would have been a simpler and effective  way to explain this. but currently no LabVIEW installed on my system

  • One structure is created and using in 3 queries, i want to modify that stru

    hi gurus,
    one structure is created and using in 3 queries, i want to modify that structure in only one query but it will not effect other two.wat should i do for that?
    thanx in advace,
    i will assign points,
    srinivas.

    Hi srinivas,
       This scenario could be frequently seen in a project. I assume the structure you mentioned is saved as a global structure, then in the query which you want to modify, right click on the structure and choose "Remove Reference". This function copies the global structure to a local one, in which you can change it and the other two won't get affected.
       Hope this helps.
    Regards,
    Aaron

  • User unable to create queries on a multiprovider that exists in production.

    Helo,
        I have an  issue where one of the users  is unable to create queries in BE X on a multiprovider as the multiprovider is not geting listed .He gets the message "No objects found ".
    I have Checked and the multiprovider exist in test and production
    We replicated the same  user's production id into a test id in Test system , and the user is able to see the mutiprovider geting listed to create the query
    Not sure what is the problem in production, Any help on this will be very useful.
    Regards
    Jayu

    Hi,
    That User may not have the authorizations on that InfoArea and MP, so check it. See SAP help on Roles and Authorizations.
    http://help.sap.com/saphelp_nw70/helpdata/en/44/599b3c494d8e15e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw70/helpdata/en/be/076f3b6c980c3be10000000a11402f/frameset.htm
    Using RSECADMIN we can define the roles and authorizations in BI 7.
    See some good posting sin SDN
    First define the Roles as per your business and then assign the Objects i.e. Plant . Division etc..
    http://wiki.sdn.sap.com/wiki/display/BI/AnalysisAuthorizationsinBI-+approach
    http://help.sap.com/saphelp_nw70/helpdata/en/44/599b3c494d8e15e10000000a114084/frameset.htm
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/659fa0a2-0a01-0010-b39c-8f92b19fbfea
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a6c54319-0e01-0010-20a4-fb81ad32f330
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/ded59342-0a01-0010-da92-f6b72d98f144
    Thanks
    Reddy

  • How to create queries on multiproviders& what are steps to be taken.

    Hi all,
    How to create queries on multiproviders& what are steps has to be take care.
    Thanks,
    cheta.

    Hi,
    Following scenario for  sample for slow moving items for multiproviders.
    Slow Moving Item Scenario
    You want to define a query that displays all products that have been purchased only
    infrequently or not at all. In other words, the query is also display characteristic values for
    which no transaction data or only low values exist for the selected period.
    Procedure
    In the Administrator Workbench;
    1. Create a MultiProvider consisting of a revenue InfoCube, containing the InfoObject
    Material (0MATERIAL), and the InfoObject 0MATERIAL. The InfoObject must be set as
    an InfoProvider in InfoObject maintenance. In other words, you need to have assigned
    the InfoObject to an InfoArea. (also refer to Tab Page: Master Data/texts [Ext.]).
    In the BEx Analyzer:
    2. Select your MultiProvider in the Query Designer.
    3. Define a query that contains the InfoObject 1ROWCOUNT in the columns.
    The InfoObject 1ROWCOUNT is contained in all “flat” InfoProviders, that is, in all
    InfoObjects and ODS objects. It counts the number of records in the InfoProvider.
    In this scenario, you can see from the row number display whether or nor values
    from the InfoProvider InfoObject are really displayed.
    4. Save the query and execute it. All values are now displayed, including those for materials
    that were not purchased.
    If you filter by time (0CALYEAR, for example), values from the InfoProvider
    InfoObjects are not displayed since 0CALYEAR is not an attribute of
    0MATERIAL. You can see this from the absence of values in the 1ROWCOUNT
    column in the query. If you want to restrict by time, you need to proceed as
    follows:
    Constant Selection for the InfoObject
    You need to set the constant selection for the 1ROWCOUNT key figure in order to be able to
    set a filter by time in this query.
    1. In the Query Designer, via the context menu for 1ROWCOUNT, choose Edit.
    2. On the left hand half of the screen, under the data package dimension, select the
    characteristic InfoProvider (0INFOPROV) and drag it into the right-hand screen area.
    3. From the context menu for the InfoProvider, choose Restrict, and restrict across the
    InfoProvider InfoObject.
    4. Also from the context menu for the InfoProvider, choose the function Constant Selection.
    5. Save the query and execute it. You can now also set a filter for a time characteristic, the
    materials display remains as it was.
    Displaying Slow Moving Items
    If you want to display a list of slow moving items, excluding products that are selling well, you
    need to proceed as follows:
    1. In the Query Designer, via the context menu for 1ROWCOUNT, choose Edit.
    2. Via the context menu for InfoProvider, choose the function Display Empty Values. Also
    select Constant Selection.
    3. Save the query and execute it. The result is that the system displays the materials for
    which there was no revenue.
    Displaying Products with Small Revenues
    If you want to display a list of products that have not been sold or have only been selling
    badly, you need to proceed as follows:
    1. Set constant selection as described above, but do not select the display empty values
    function.
    2. In the Query Designer, define a condition for the 0MATERIAL InfoObject. Specify a value
    that is to be the upper limit for a bad sale.
    3. Save the query and execute it. The result is that the system displays all materials that
    have not been sold or have been selling badly.
    Thanks,
    Sankar M

  • RRMX for executing and creating queries

    Hi,
    I have some users which are able only to create queries and another group which are only able to execute them.
    Which auth object and values should I consider in order to distinguish these 2 roles?
    Thanks and regards
    FedeX

    Hello, Firstly, may I suggest that the subject is misleading for the question asked.
    Transaction RRMX only excute the BEX analyzer add in.
    In BI/BW the authorization objects that govern whether the user is authorized to display/ execute / create / change queries are S_RS_COMP and S_RS_COMP1.
    Both these objects work in tandem. Where as S_RS_COMP covers the infocube, info area authorizations along with activity and Report IDs, S_RS_COMP1 covers the authorization to execute reports (queries) created by author /Owner  (SAP username). example: If the owner field in S_RS_COMP1 has user ID PTERRY01, a user who is assigned the role containing this authorization will only be able to execute queries created by the user PTERRY01.
    Standard Activities 03, 16 allow the user to display / execute reports while 01,02 determine whether the user can create / change reports and if he can, what reports example: If the acitivty 01 is combined with report ID Y*, the user can only create queries whose names start with Y.
    And please note, RRMX (Bex analyzer) does not allow you to create queries, Query designer does (link from BEX Analyzer opens up Designer).
    Regards,
    Prashant

  • Funcion process of creating queries

    i wonder how it works the process of creating queries, for example: the user logs in system, and then the user chooses to new document Web intelligence,  the user it builds your query. What are the servers responsible for these processes? items involved and what each of them do?
    thank you

    not answered

  • Logical error in creating tables using db link in solaris

    Hi,
    While creating table using the syntax create table newtab...as select * from tab@dblink .. I am facing a problem. The newtab table created is having a structure different (from datalength point of view of varchar2 and char datatypes) from the source. The data length is getting tripled i.e. if a column a is varchar2(20) in tab then it is becoming --- a varchar2(60) in newtab. This is happening in solaris environment when the two databases are in 2 different servers. Please let me know if there are any patches to resolve the problem.
    Thanks
    Arnab

    ORA-02019: connection description for remote database not foundHave you used this database link successfully for some other queries?
    The error posted seems to indicate that the DB Link is not functional at all. Has it worked for any other type of DML operation or is this the first time you ever tried to use the link?

  • Problem with Join Queries using PHP and an Orcale Database

    Ok, I am trying to build a simple php querying tool for my oracle database and for the most part it is working however I am having a problem getting data from my join queries. If I run the following query :
    QUERY:
    SELECT lastfirst,EnteredBy,Debit FROM students sts JOIN GLDetail gl ON gl.studentid=sts.id
    RESULT SET:
    Lastfirst     EnteredBy     Debit
    caiu, test      204     1
    But when I run the query correctly I get no results
    QUERY:
    SELECT sts.lastfirst,gl.EnteredBy,gl.Debit FROM students sts JOIN GLDetail gl ON gl.studentid=sts.id
    RESULT SET:
    sts.lastfirst     gl.EnteredBy     gl.Debit
    and if I run the query combining the two above methods and adding a field (schoolid) that has the same name on both table I get the following result sets
    QUERY:
    SELECT lastfirst,EnteredBy,Debit,sts.schoolid FROM students sts JOIN GLDetail gl ON gl.studentid=sts.id
    RESULT SET:
    lastfirst     EnteredBy     Debit     sts.schoolid
    caiu, test      204     1     
    QUERY:
    SELECT lastfirst,EnteredBy,Debit,schoolid FROM students sts JOIN GLDetail gl ON gl.studentid=sts.id
    RESULT SET:
    NONE
    Therefore, I have to have something written incorrectly in my php code and I just can not figure it out. My entire code is pasted below please provide me with an assistance you might have to offer. I have change the odbc_connec line so I could post it to this forum. In addition, I had to phrase out the column headers there for when you write the column headers you have to use ~ instead of , as the separator and then I turn back into the correct format for sql.
    //These scripts just open help windows if somone clicks on the icon
    <script>
    function submit()
    {document.sqlform.submit();}
    </script>
    <script>
    function colwin(){
    window.open("colnames.php",null,"height=300,width=400,scrollbars=1");}
    </script>
    <script>
    function tabwin(){
    window.open("tablenames.php",null,"height=300,width=400,scrollbars=1");}
    </script>
    <script>
    function help(){
    window.open("http://www.w3schools.com/sql/default.asp",null,"height=500,width=700,scrollbars=1");}
    </script>
    <form method="post" action="<?php echo $PHP_SELF;?>" name="sqlform">
    <?php
    //Cookie to check for authorization to the site
    if($_COOKIE['cookie']=="CheckCookieForAuth")
    //These get the values of the textareas after the form has been submitted
    $sqlSELECT = $_POST["SELECT"];
    $sqlFROM = $_POST["FROM"];
    $sqlJOIN = $_POST["JOIN"];
    $sqlWHERE = $_POST["WHERE"];
    $sqlOTHER = $_POST["OTHER"];
    $sqlSELECTTYPE = $_POST["SELECTTYPE"];
    //This is the variable used to parse out my headers the user entered
    $sqlColNames = split('~',$sqlSELECT);
    //This converts the ~ separator to , so I can actually use it as part of my sql string
    $search = array('~');
    $replace = array(',');
    $mystring = $sqlSELECT;
    $sqlString = str_replace($search, $replace, $mystring);
    //These are the textareas and the drop down options that the end users has to create queries
    echo "<table border=0>";
    echo "<tr><td valign='top'>";
    echo "<B>SELECT TYPE</B> <BR><SELECT NAME=SELECTTYPE>
    <OPTION VALUE='SELECT' SELECTED>SELECT</OPTION>
    <OPTION VALUE='SELECT DISTINCT'>SELECT DISTINCT</OPTION>
    <OPTION VALUE='INSERT'>INSERT</OPTION>
    <OPTION VALUE='UPDATE'>UPDATE</OPTION>
    <OPTION VALUE='DELETE'>DELETE</OPTION>
    </SELECT>";
    echo "</td><td>";
    echo "<textarea rows=2 cols=75 name=SELECT wrap=physical>$sqlSELECT</textarea>";
    echo "</td><td valign='top'>";
    echo "<img src='images/sqlC.jpg' width='25' height='25' onclick='colwin()'>";
    echo "</td></tr>";
    echo "<tr><td valign='top'>";
    echo "<b>FROM</b>";
    echo "</td><td>";
    echo "<textarea rows=2 cols=75 name=FROM wrap=physical>$sqlFROM</textarea>";
    echo "</td><td valign='top'>";
    echo "<img src='images/sqlT.jpg' width='25' height='25' border=0 onclick='tabwin()'>";
    echo "</td></tr>";
    echo "<tr><td valign='top'>";
    echo "<b>JOIN</b>";
    echo "</td><td>";
    echo "<textarea rows=2 cols=75 name=JOIN wrap=physical>$sqlJOIN</textarea>";
    echo "</td></tr>";
    echo "<tr><td valign='top'>";
    echo "<b>WHERE</b>";
    echo "</td><td>";
    echo "<textarea rows=2 cols=75 name=WHERE wrap=physical>$sqlWHERE</textarea>";
    echo "</td></tr>";
    //This is where the end user would enter group by, having, order by, etc..
    echo "<tr><td valign='top'>";
    echo "<b>OTHER</b>";
    echo "</td><td>";
    echo "<textarea rows=2 cols=75 name=OTHER wrap=physical>$sqlOTHER</textarea>";
    echo "</td></tr>";
    This is a run query icon and a help icon
    echo "<tr><td colspan=2 align=right>";
    echo "<img src='images/RunQuery.jpg' width='30' height='28' onclick='submit()'> <img src='images/qm.jpg' border=0 width='25' height='25' onclick='help()'>";
    echo "</td></tr></table>";
    echo "<br>";
    echo "<br>";
    //This is where I connect to my remote oracle database
         $conn=odbc_connect('ODBC_ConnectionName','USERNAME','PASSWORD');
    //This is the sql string created by the end users
         $sql="$sqlSELECTTYPE $sqlString FROM $sqlFROM $sqlJOIN $sqlWHERE $sqlOTHER";
    //This executes the connection string and the sql string
         $rs=odbc_exec($conn,$sql);
    //This will display the query or a message if the query is empty
         if($rs!=NULL){
         echo "<table border=1>";
         echo "<tr>";
    //This loops through the string array the end user enter the field name text area to get column headers
         for($i=0; $i<count($sqlColNames); $i++)
         echo "<td>";
         print_r($sqlColNames[$i]);
         echo "</td>";
         echo "</tr><tr>";
    //This actually fetchs the rows from the statement and then display the data based on the column names the end user speificed
         while (odbc_fetch_row($rs))
              for($i=0; $i<count($sqlColNames); $i++)
                   $results=odbc_result($rs,$sqlColNames[$i]);
                   echo "<td>$results</td>";
              echo "</tr>";
         odbc_close($conn);
         echo "</table>";}else{echo "Results will be displayed here";}
    echo "<br><br>";
    echo $sql;
    else
    echo "Not logged in";
    ?>
    </form>

    This looks more like a SQL question than a PHP issue. There are a couple of JOIN examples at http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/statements_10002.htm#i2066611 that might you work through the problem.

  • Currency Translation Type in queries using currency conversion

    I have a question on the Currency Translation Type (EUR_VAR) that is used in all of the queries using currency conversion on the fly. (currency is maintained automatically nor in table.)
    User wants to use 2 different exchange rates in a single query. The months in 2010 (Actuals) are to
    be converted using Xchangerate-type EURO and the months in 2011 (Planned) to use Xchangerate-type USD.
    But store different rates with different starting dates. This is however not possible because the Currency Translation
    Type is set-up (1) to work with Query Key date - rather than a characteristic in the data and (2) apparently these
    currency translation types only work with time characteristics like 0fiscyear
    My idea is therefor to:
    1. Create a new variable (similar to EXC_RATE) to prompt for a 2nd Exchange Rate type when query starts
    2. Create a new Currency Translation Type (next to EUR_VAR), referencing the new variable or sticking to fixed Xrate type, fixed to EUR
    Is this possible to create Idea (2)
    Many Thanks in Advance.

    The best way would be to create two curr conversion types , one converting to EUR and other to USD .Put them in properties of coressponding KFs in query.For timref in RSCUR , variable time ref can be used individually for two conv types.

  • Is there a way to create or use a "slide viewed" variable?

    Hi, I would like to write a conditional action based on whether or not a learner has visited slide. I realize I could write an individual variable for every single slide, but that would be a very slow and manual way to set this up. From a logic perspective, I wanted to set up a single project action that would look something like this.
    If "slide viewed" = no, then do this...
    If "slide viewed" = yes, then don't do anything.
    Theoretically, it would seem possible since you can show a checkmark in the TOC next to a visited slide, but I can't quite figure out how to apply this to my project actions.
    Is something like this possible in Captivate 6 or 7?

    Disclaimer: I've only tried this with a couple slides, with very little error checking, but here's a single action approach I came up with.
    First I created a tracker variable. Then I labelled each slide with a single, distinct letter/number/character. (Not sure if there are any characters you should stay away from; maybe someone else can tell you which ones might cause problems as a slide name/label). So you might run out of letters/numbers/characters if you have a ton of slides. If you have enough unique, one-letter names, however, this is the logic behind the advanced action:
    If slide_tracker contains cpInfoCurrentSlideLabel
    Then: continue
    Else: do whatever you want it to do
    slide_tracker = slide_tracker + cpInfoCurrentSlideLabel
    So basically, if we've already been to this slide, the slide label will already been appended to our tracker variable. Thus it will contain the unique letter/symbol/number, and will do nothing (continue). If we haven't been to this slide, then we can do whatever we want to do and update the tracker to reflect that we've now been to this slide.
    Again, a disclaimer: I spent only five minutes trying this out, so there may be unforseen issues with it.

  • Error creating Customer Exit variable, please help

    Hi Experts,
    This is the scenario, I need to obtain the convertion rate from the table TCURR in order to convert several currencies to USD, so I created a Customer Exit variable that gets the Period and based on that obtains the conversion rate for the last day of the given month from TCURR, the problem is when I created the Formula Variable to get the value from the Customer exit variable I got the following error:
    'ZVARREGEXIT' ALREADY EXISTS; SELECT A DIFFERENT NAME.
    But in not using that name anywhere on my variables creation, Im doing something wrong? How can I check wheres is that variable being used.
    Ideas, comments are always welcome and appreciated.
    Regards.

    Hi Ed,
    Open Admin Workbench (RSA1) and choose Transport Connection --> Object Types --> Query Elements --> Variable --> Select Objects. Find the variable of interest and transfer it back to the main screen, then right-click and choose 'Display Description'. That will show you a "where used" list of queries, workbooks, etc.
    Next, you can use the previous technique to open one of the queries, find the variable in the query, and determine which InfoObject it is associated with.
    Hope this helps!
    Regards,
    Saurabh

Maybe you are looking for