LAYER_GTYPE parameter in SDO_RELATE operator

Hello, Dan :)
In documentation about Spatial i found that the SDO_POINT member of SDO_GEOMETRY is used to optimize different geometric operations over the geometry. From other side the additional parameter LAYER_GTYPE=POINT is required in order SDO_RELATE operator works more efficiently on point data. Is it necessary to define LAYER_GTYPE=POINT inside SDO_RELATE when every geometry defined in the column has defined SDO_POINT and NULLs for SDO_ELEM_INFO_ARRAY and SDO_ORDINATES or i can ommit this parameter and still get the optimized work of SDO_RELATE ?
I use 8.1.6 and planning to upgrade to 8.1.7 ASAP.
Thank you.
I middletime use SDO_RELATE without this parameter to achieve universal use of the procedure.

Hi,
You should use layer_gtype=point in either case, i.e. whenever the layer contains ONLY point data then layer_gtype=point will help.
Whether the point data is stored in the elem_info_array and ordinate array or in the point_type is not important when deciding when to use layer_gtype=point.

Similar Messages

  • Slow SDO_RELATE operation on a spatial view

    Hi Folks,
    I need some help to understand what's going on with a spatial query that is taking so long to be executed (about 7 minutes).
    I have a spatial view as below:
    create or replace view v_lote_fiscal_relac as
    select
    lf.objectid,lf.numbloco,lf.setor,lf.quarteirao,lf.origem,lf.tipo,lf.nome,lf.superquadra,lf.quadra,lf.area,lf.observacao,lf.motivo,lf.data,lf.matricula,
    vlf.idf_lote,vlf.ind_tipo_lote,vlf.num_lote,vlf.num_seq_lote,vlf.num_setor,vlf.num_quarteirao,vlf.mtr_area_real,vlf.des_tipo_categoria,
    lf.geom
    from
    GEOSMFAGP.Lote_Fiscal lf, IMO_VW_LOTE_FISCAL@POAGEO vlf
    where
    retorna_num_lote(lf.numbloco) = vlf.num_lote AND
    retorna_num_seq_lote(lf.numbloco) = vlf.num_seq_lote;
    The functions retorna_num_lote and retorna_num_seq_lote just do a substr to extract information from lf.numbloco column
    This is the spatial query created by a mapping application
    SELECT
    OBJECTID
    FROM
    GEOPONTO.V_LOTE_FISCAL_RELAC T
    WHERE
    SDO_RELATE(T.GEOM,
    SDO_GEOMETRY(2003,1010101,NULL,
    SDO_ELEM_INFO_ARRAY(1,1003,1),
    SDO_ORDINATE_ARRAY(180514.7833451195,1663508.6932339652,
    180514.84948680276,1663504.0633161366,
    180517.6274375,1663503.9971744534,
    180517.69357918325,1663508.4948089155,
    180514.7833451195,1663508.6932339652)), 'mask=ANYINTERACT') = 'TRUE'
    Please, correct me if I'm wrong, but it looks like the query will first get all the records that satisfy the where clause and then apply the spatial filter on this resultset.
    How can it be improved?
    I did some tests using SQL Developer (SQL Profiler) and it was possible to create a better execution plan to this query. The time was reduced to 4 seconds.
    But the SQL Profile seems to have effect only to the query analyzed. I mean, if a change the sdo_geometry parameter, the query takes 7 minutes again.
    Any ideas?
    Regards,
    Luis

    Hi Stefan,
    Please, see below the Explain Plan that I mentioned and the SQL Profiler command that makes the query be executed very fast.
    *1- Original*
    Plan hash value: 2780585567
    | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | Inst |IN-OUT|
    | 0 | SELECT STATEMENT | | 4808 | 1596K | 25 (0)| 00:00:01 | | |
    | 1 | NESTED LOOPS | | 4808 | 1596K| 25 (0)| 00:00:01 | | |
    | 2 | REMOTE | IMO_VW_LOTE_FISCAL | 25553 | 648K | 25 (0)| 00:00:01 | POAGEO | R->S |
    |* 3 | TABLE ACCESS BY INDEX ROWID| LOTE_FISCAL | 1 | 314 | 25 (0)| 00:00:01 | | |
    |* 4 | DOMAIN INDEX | XSPLOTE_FISCAL_GEO | | | 0 (0)| 00:00:01 | | |
    uery Block Name / Object Alias (identified by operation id):
    1 - SEL$F5BB74E1
    2 - SEL$F5BB74E1 / VLF@SEL$2
    3 - SEL$F5BB74E1 / LF@SEL$2
    4 - SEL$F5BB74E1 / LF@SEL$2
    Predicate Information (identified by operation id):
    3 - filter("VLF"."NUM_LOTE"="RETORNA_NUM_LOTE"("LF"."NUMBLOCO") AND
    "VLF"."NUM_SEQ_LOTE"="RETORNA_NUM_SEQ_LOTE"("LF"."NUMBLOCO"))
    4 - access("MDSYS"."SDO_RELATE"("LF"."GEOM","MDSYS"."SDO_GEOMETRY"(2003,1010101,NULL,"SDO_ELEM_INFO_ARRA
    Y"(1,1003,1),"SDO_ORDINATE_ARRAY"(180514.7833451195,1663508.6932339652,180514.84948680276,1663504.063316136
    6,180517.6274375,1663503.9971744534,180517.69357918325,1663508.4948089155,180514.7833451195,1663508.6932339
    652)),'mask=ANYINTERACT')='TRUE')
    *2- Using SQL Profile*
    Plan hash value: 3617866586
    | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | Inst |IN-OUT|
    | 0 | SELECT STATEMENT | | 4808 | 1596K| 485 (1) | 00:00:06 | | |
    |* 1 | HASH JOIN | | 4808 | 1596K| 485 (1) | 00:00:06 | | |
    | 2 | TABLE ACCESS BY INDEX ROWID| LOTE_FISCAL | 1882 | 577K| 459 (1) | 00:00:06 | | |
    |* 3 | DOMAIN INDEX | XSPLOTE_FISCAL_GEO | | | 0 (0) | 00:00:01 | | |
    | 4 | REMOTE | IMO_VW_LOTE_FISCAL | 25553 | 648K| 25 (0) | 00:00:01 | POAGEO | R->S |
    uery Block Name / Object Alias (identified by operation id):
    1 - SEL$F5BB74E1
    2 - SEL$F5BB74E1 / LF@SEL$2
    3 - SEL$F5BB74E1 / LF@SEL$2
    4 - SEL$F5BB74E1 / VLF@SEL$2
    Predicate Information (identified by operation id):
    1 - access("VLF"."NUM_LOTE"="RETORNA_NUM_LOTE"("LF"."NUMBLOCO") AND
    "VLF"."NUM_SEQ_LOTE"="RETORNA_NUM_SEQ_LOTE"("LF"."NUMBLOCO"))
    3 - access("MDSYS"."SDO_RELATE"("LF"."GEOM","MDSYS"."SDO_GEOMETRY"(2003,1010101,NULL,"SDO_ELEM_INFO_ARRA
    Y"(1,1003,1),"SDO_ORDINATE_ARRAY"(180514.7833451195,1663508.6932339652,180514.84948680276,1663504.063316136
    6,180517.6274375,1663503.9971744534,180517.69357918325,1663508.4948089155,180514.7833451195,1663508.6932339
    652)),'mask=ANYINTERACT')='TRUE')
    Recommendation (estimated benefit: 99.96%)
    - Consider this SQL Profile:.
    execute dbms_sqltune.accept_sql_profile(task_name => 'staName68255',
    task_owner => 'GEOPONTO', replace => TRUE);
    After the execution o the command above, the same query is executed in 3 seconds.
    P.S: I Cannot change the view, the column is indexed and SDO_FILTER will not work for me, because I need an exact match.
    Regards,
    Luis

  • Passing multiple values in a parameter through IN operator

    hello everyone,
    i want to know wheather it is possible to pass multiple values to a report parameter and use the parameter in the query with the IN operator.
    I feel this should be possible but dont know the way.
    Pls help

    i have also suffered from this problem. you can solve it by creating a table like
    create table abc
    id number,
    value number;
    then follow the steps.
    1) insert all the values in this table by incrementing id and values
    2) then pass lowest id and larget id to the report
    3) now in report use the select statement like
    SELECT * FROM AAA WHERE ABC IN (SELECT VALUE FROM ABC WHERE ID BETWEEN V_MAX AND V_MIN)
    4) IN THE REPORT'S AFTER TRIGGER, YOU HAVE TO DELETE
    THESE TEMPORARILY CREATED ROWS
    LIKE
    DELETE ABC
    WHERE ID BETWEEN V_MAX AND V_MIN;
    SO THIS WILL SOLVE YOUR PROBLEM.

  • I want to use a parameter againts "IN" operator in the report, but failed!

    Hi all,
    i had a report query parameter like this;
    " where customers IN :u_customer_list "
    when i assign single value to :u_customer_list, it runs report perfectly, but whenever i give more than one value to same variable, the report previewer comes out without any data, ( a blank report)
    how can i successfully use a list with "IN" operator

    Thanks Mark,
    I had already tried what you suggest like where customers in (:u_customer_list),
    :u_customer_list is character(500) report parameter,
    1) whenever i pass list of number without single quotes seperated with comma, it runs blank,
    2) whenever i pass list of number enclosed in single quotes and seperated with comma, it runs blank,
    3) it only returns report with data when i pass only a single value without single quotes, its work
    plz guide, is there any possibility to use a record variable instead of :u_customer_list, if possible then how, give me hints,
    if i store the list in a temporary table in database and run a subquery to retreive values , it works fully and correctly but it is not ideal and not easy to handle fully
    waiting

  • Pass Parameter to IN Operator in SQL Command in OLEDB source

    Hi,
    I am trying to pass multiple values as one parameter. Eg: I need to get the employess with gender in ('M','F')
    query: select eno, ename, sal, gender from emp where gender in (?)
    Created a variable 'varGender' with the value - 'M','F'
    And passed the parameter mapping in OLEDB Source. But this is not returning any records.
    Please advise.
    Thanks.

    Hi Vaibhav,
    Thanks for your kind reply.
    I need to pass the same where condition to multiple source queries and we don't want to repeat the same condition in all queries and replace with a variable. Also the query is too big to keep it in the Variable. Please help me.
    Thanks
    Put the required filter values in a staging table and then use it in a join condition with all the other tables in all the other tasks.
    Please Mark This As Answer if it solved your issue
    Please Vote This As Helpful if it helps to solve your issue
    Visakh
    My Wiki User Page
    My MSDN Page
    My Personal Blog
    My Facebook Page

  • [b]Parameter with logical operator.[/b]

    I have where clause in SQL like this :
    WHERE (Date#1 = '31-JAN-2005' AND Date#2 BETWEEN '01-JAN-2005' AND '31-JAN-2005')
    OR (Date#1 = '28-FEB-2005' AND Date#2 BETWEEN '01-FEB-2005' AND '28-FEB-2005')
    OR (Date#1 = '31-MAR-2005' AND Date#2 BETWEEN '01-MAR-2005' AND '31-MAR-2005')
    I will enter the value of column Date#1 in the range value such as Date#1 between '31-JAN-2005' and '31-MAR-2005'.
    How to use parameters with this WHERE clause?
    Note: Date#1, Date#2 is the column in the table.
    S. Vilas

    Vilas,
    You can implement this by using 3 parameters (one for Date#1 i.e., Date1; and two for Date#2 i.e., Date2From and Date2To) and a condition (i.e., Cond1):
    1)Date1: For Item "Date#1", with "=" condition operator
    2)Date2From: For Item "Date#2", with "=" condition operator
    3)Date2To: For Item "Date#2", with "=" condition operator
    4)Cond1: Item "Date1", condition "=", values ":Date1"; Group "OR"; Item "Date#2", Condition "Between" Values :Date2From and:Date2To
    Best wishes.
    Zahid

  • Convert coodinates to query_geometry for SDO_RELATE operator

    Expert,
    How to convert the coordinates “-109.059, 36.99241 -102.0411, 41.00295” in the following WFS request so it can be used as query_geometry to run as a raw SQL statement? Your time and expertise are greatly appreciated.
    <?xml version="1.0" standalone="yes"?>
    <wfs:GetFeature
    service="WFS"
    version="1.0.0"
    xmlns:gml="http://www.opengis.net/gml"
    xmlns:wfs="http://www.opengis.net/wfs"
    xmlns:ogc="http://www.opengis.net/ogc"
    xmlns:scottns="http://www.myserver.com/scott">
    <wfs:Query typeName="scottns:UsCities">
    <ogc:Filter>
    <ogc:Within>
    <ogc:PropertyName>scottns:LOCATION</ogc:PropertyName>
    <gml:Box srsName="SDO:8307">
    <gml:coordinates>
    -109.059, 36.99241 -102.0411, 41.00295
    </gml:coordinates>
    </gml:Box>
    </ogc:Within>
    </ogc:Filter>
    </wfs:Query>
    </wfs:GetFeature>
    SELECT u.*
    from SCOTT.US_CITIES u
    where SDO_RELATE(u.location,
    'mask=inside+coveredby+equal') = 'TRUE'

    ch****,
    -- "ASSUMING coordinates in WFS were listed in Y,X order"
    SELECT u.*
    from SCOTT.US_CITIES u
    where SDO_RELATE(
        u.location,
        SDO_GEOMETRY('POLYGON (36.99241 -109.059, 41.00295 -102.0411)', 8307)
        'mask=inside+coveredby+equal') = 'TRUE'Regards,
    Noel

  • Value of an operation parameter depending on the characteristic value

    Hi,
    Is it possible to set the value of the Normal Duration (or any other parameter of the operation) depending on the value of one characteristic?
    For example: The value of my characteristic A is 2, so I want to set Normal Duration = 10*(Value_of_A) = 20 for the first operation of the standard network. Is it possible in standard SAP???
    Thanks in advance,
    Luis.

    Your question is quite clear, Please go this links may be helpful.
    Tcode realted to variant configuration
    http://help.sap.com/erp2005_ehp_03/helpdata/EN/bc/f48e3823f46f51e10000009b38f842/frameset.htm
    Help materal  related to variant configuration
    http://help.sap.com/erp2005_ehp_03/helpdata/EN/92/58c3fc417011d189ec0000e81ddfac/frameset.htm
    Regards
    Nitin
    Edited by: Nitin  Patoliya on Dec 3, 2008 9:56 AM

  • Formula as inlist operator parameter

    hi all,
    i'm using webi XI 3.1 on an OLAP universe.
    My question is this:
    is it possible to use a formula as a parameter of inlist operator?
    like this
    [measure] where([dimension] inlist([formula]))
    I want to use a formula that lists the values of a dimension in every section on that dimension
    thank you very much
    Alessandro

    Its Not possible becoz the inslist parameters take the value as string .How can u give formula to the String value. suppose if you given the formula like
    measure where (dimension  inlist( measure where dim=" "))
    THE inlist patameter takes string value so the entire formula is displayed as string instead of return value .
    Edited by: K.sunil on Oct 24, 2011 1:08 PM

  • SDO_RELATE - EQUAL MASK - Different results on the same query

    Hello.
    I'm trying to find all spatial duplication in the point layer (using certain tolerance). That layer has q-tree spatial index and appropriate tolerance in the user_sdo_geom_metadata table (let's say 1 meter). I have SDO_VERSION=9.2.0.5.0.
    To perform that I use SDO_RELATE operator with EQUAL mask (I know that actually I can use other operators but lets consider EQUAL):
    SELECT /*+ ordered */t1.OBJECTID, /*+ ordered */t2.OBJECTID from points_table t1, points_table t2 WHERE t1.OBJECTID < t2.OBJECTID
    AND sdo_relate (t2.shape, t1.shape, 'mask=EQUAL querytype = JOIN') = 'TRUE'
    The problem is:
    If I create Q-tree index using SDO_LEVEL=8 query takes 10 minutes and returns lets say 1000 dup events
    If I create Q-tree index using SDO_LEVEL=10 query takes 20 seconds and returns lets say 996 dup events
    I'm confusing about that - Why the results are depend from SDO_LEVEL? For me it is more important then performanse.
    Those missed duplication events are really duplication events (point closer to each other than 1 meter) and SDO_DISTANSE for those particlar poins returns 0. It is correct, but SDO_RELATE monitors that those points are not equal.
    So how can I rely on the SDO_RELATE function? What SDO_LEVEL need I use to get correct results? I choosed Q-tree indexes because of performance I didn't get success to get result using R-tree indexes on big datasets at all.
    Regarding polylines:
    I suppose that I can get similar problem and for polylines (I’m also using same query to find dups polylines).
    Sometimes SDO_RELATE finds polylines which ones are not really equal in the specified tolerance (1 meter). All cases that I saw – it was simple segments which ones share only one vertex but the other ends are spatially disjoint more that 3 meters. Why SDO_RELATE finds such cases as EQUAL?
    Thank you very much in advance.

    Thank you Siva for advice.
    I've tried R-tree indexes and got reasonable performance on the tables with ~20k rows.
    But when I try to ran that query on the table (points) with 250k rows it takes forever :(.
    1) Create index:
    Create index nodes_idx on nodes(SHAPE) indextype is mdsys.spatial_index parameters ('LAYER_GTYPE=POINT initial=10m next=5m sdo_rtr_pctfree=10 pctincrease=0');
    /* actually 'initial=10m next=5m sdo_rtr_pctfree=10 pctincrease=0' options only decreased slightly performance */
    2) Execute query:
    SELECT /*+ ordered */t1.OBJECTID, /*+ ordered */t2.OBJECTID
    from nodes t1, nodes t2 WHERE t1.OBJECTID < t2.OBJECTID AND
    sdo_relate (t2.shape, t1.shape, 'mask=EQUAL querytype = WINDOW') = 'TRUE'
    Plan Explanation:
    | Id | Operation | Name | Rows | Bytes | Cost |
    | 0 | SELECT STATEMENT | | 150M | 1095G| 505M|
    | 1 | NESTED LOOPS | | 150M| 1095G| 505M |
    | 2 | TABLE ACCESS FULL | NODES | 548K | 2043M| 411 |
    | 3 | TABLE ACCESS BY INDEX ROWID| NODES | 274 | 1047K| 505M|
    | 4 | DOMAIN INDEX | NODES_IDX | 27416 | | |
    As far as I understand, oracle reserved for that query 1095G of memory?! Is it really necessary for that simple query and how can it be possible?
    Regards, Denis.
    Message was edited by:
    Tenek

  • Multi Value Parameter with ODBC Connection

    Hi Everyone . . .
    I am stuck, and have been since Monday :/ . . .
    Backgroud:
    I am using Report Builder 3.0 with an ODBC connection to build reports off of our Vertica DB.  This part is going swimmingly, thanks to the help I recieved from this forum.
    Now, some of the queries that I am using (or reports I guess) require parameters.  I was attempting the @Parameter and quickly realized this was not possible with the ODBC connection.  I have solved this issue by using the ? as the parameter. 
    Works nicely, not as clean, but serves the purpose.
    Most, all of my parameters to this point have been single value parameters.  Now, however, we are dabbling in allowing our report users to select multiple Users as a parameter.  This is where I am stuck...
    I have flipped the parameter checkbox to "Allow multiple values", I then recieved an error saying this: 
    Cannot add multi value query parameter 'UserName' for dataset 'RankingQuery' because it is not supported by the data extension.
    Here is what I have done:  I have gone to the Dataset properties for the appropriate query that the parameter is being fed into > then to the Parameters tab.  In the Parameters tab instead of selecting the @UserName parameter from the drop down
    I clicked the Fx buttone and inserted the UserName Parameter from there it looks like this: =Parameters!UserName.Value(0)
    Now because of this last step my report runs without error, however, when I select multiple user names from the parameter drop down I only recieve data for the first person selected in that drop down.
    Am I missing something?  Does anyone know how to fix this?  Please help!
    Thanks everyone.
    Travis

    Hi There
    Thanks for your posting. Can you please try this way? Go to your dataset properties and then go to filter tab and add filter like this
    Please choose your dataset filed name from the dataset in which you would like to apply the filter for your parameter
    UserName
    Put operator=in 
    And please put value like= Parameters!UserName.Value
    Please do not put Parameters!UserName.Value(0)
    I hope this will resolve your problem
    Many thanks
    Syed

  • Null pointer Exception with removeRowWithKey operation

    Hii experts,,,
    I am using JDevelepor 11.1.2.1.0 Version
    I Am new in ADF ,
    In My sample application i select row in iterator by findIterator() method
    then get the specified row by getCurrentRow();
    then i get the rowKey By row.getKey() method..
    I put rowKey as parameter to removeRowWithKey operation
    I have get null pointer Exception with removeRowWithKey operation
    java.lang.NullPointerException
         at oracle.jbo.server.ViewRowSetImpl.prepKeyForFind(ViewRowSetImpl.java:5352)
         at oracle.jbo.server.ViewRowSetImpl.findByKey(ViewRowSetImpl.java:5394)
         at oracle.jbo.server.ViewRowSetImpl.findByKey(ViewRowSetImpl.java:5296)
         at oracle.jbo.server.ViewRowSetImpl.findByKey(ViewRowSetImpl.java:5290)
         at oracle.jbo.server.ViewObjectImpl.findByKey(ViewObjectImpl.java:11536)
         at oracle.adf.model.binding.DCIteratorBinding.removeRowWithKey(DCIteratorBinding.java:3748)
         at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1598)
    how can solve this???

    thanks Timo
    through this URL i get possible deletion methods...
    pls give more Information about the concept of removeRowWithKey, setCurrentRowWithKey, setCurrentRowWithKeyValue operation.... Just For Knowledge....
    Edited by: NZL on Mar 2, 2012 9:37 AM
    Edited by: NZL on Mar 2, 2012 9:42 AM

  • Concat Operation failing.[Error ORABPEL-10039]: invalid xpath expression

    Hi ,
    I am trying to concat two values which are as mentioned below
    concat(bpws:getVariableData('paramsVar','/ns7:parameters/ns7:item[ns7:name='ContractNumber']/ns7:value'),bpws:getVariableData('AccumilateEmail','/ns1:AccumilatePLAContracts/ns1:AccumilatePLAType[$PLACount]/ns1:ContractInfoType[$ContractInfoTypeCount]/ns1:ContractNumber'))
    to /ns7:parameters/ns7:item[ns7:name='ContractNumber']/ns7:value (which is same as first parameter of concat operation)
    the error is [Error ORABPEL-10039]: invalid xpath expression
    [Description]: in line 681 of "C:\Users\varsha.tm\Desktop\InitiateMaintainContractRolesEmail\bpel\InitiateMaintainContractRolesEmail.bpel", xpath expression "concat(bpws:getVariableData('paramsVar','/ns7:parameters/ns7:item[ns7:name='ContractNumber']/ns7:value'),bpws:getVariableData('Ac
    cumilateEmail','/ns1:AccumilatePLAContracts/ns1:AccumilatePLAType[$PLACount]/ns1:ContractInfoType[$ContractInfoTypeCount]/ns1:ContractNumber'))" specified in <from> is not valid, because XPath query syntax error.
    Syntax error while parsing xpath expression "concat(bpws:getVariableData('paramsVar','/ns7:parameters/ns7:item[ns7:name='ContractNumber']/ns7:value'),bpws:getVariableData('AccumilateEmail','/ns1:AccumilatePLAContracts/ns1:AccumilatePLAType[$PLACount]/ns1:ContractInfoType[$ContractInfoTyp
    eCount]/ns1:ContractNumber'))", at position "76" the exception is Expected: ).
    Please verify the xpath query "concat(bpws:getVariableData('paramsVar','/ns7:parameters/ns7:item[ns7:name='ContractNumber']/ns7:value'),bpws:getVariableData('AccumilateEmail','/ns1:AccumilatePLAContracts/ns1:AccumilatePLAType[$PLACount]/ns1:ContractInfoType[$ContractInfoTypeCount]/ns1:Co.....
    I also tried converting both the variables of concat to string and then giving to concat operation. please let me know what could be the possible way to do this

    Hi,
    try storing the values of the below into a separate variables var1,var2 and then use concat(bpws:getVariableData('var1'),bpws:getVariableData(var2))....also try using the predicate[] without
    bpws:getVariableData for the below variables...for this in the assign activity create copy operation window....u see the xpath text box and u can mention the predicate values there...some
    thing like */ns7:parameters/ns7:item[ns7:name='ContractNumber']/ns7:value* , *ns1:AccumilatePLAContracts/ns1:AccumilatePLAType[$PLACount]/ns1:ContractInfoType
    [$ContractInfoTypeCount]/ns1:ContractNumber* instead of the below values
    bpws:getVariableData('paramsVar','/ns7:parameters/ns7:item[ns7:name='ContractNumber']/ns7:value')
    bpws:getVariableData('AccumilateEmail','/ns1:AccumilatePLAContracts/ns1:AccumilatePLAType[$PLACount]/ns1:ContractInfoType[$ContractInfoTypeCount]/ns1:ContractNumber')

  • PI 7.1 - Parameter in enhanced receiver determination

    Hello experts,
    I am working on PI 7.1.
    I defined a scenario where I am using an enhanced Receiver determination to determine the list of target services thanks to an operation mapping and its related message mapping. I'd like to pass a constant value from this receiver determination to use it in the message mapping.
    To do so, I set an import parameter in the operation mapping and the message mapping and made the needed binding.
    I can then see this parameter in the receiver determination, but I can not put a constant value in it and then activate my configuration..
    Do you know why ?

    Hi
    I have not used this feature yet, however I dont think that this is a bug.
    the Parameterized mapping feature is for ID->OM->MM & not for RD.
    more info
    http://help.sap.com/saphelp_nwpi71/helpdata/en/43/bbb7fd90f5332ee10000000a11466f/frameset.htm
    /people/jin.shin/blog/2008/02/14/sap-pi-71-mapping-enhancements-series-parameterized-message-mappings
    https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/909e33f0-738c-2a10-4f87-ce73398bcf08
    Regards
    Vishnu

  • Select data with SDO_RELATE in lat long coordinate system(8307) in 10gR2

    Hi all,
    I have problem with selecting data from table.
    Data are in lat lon coordinate system 8307.
    These requests don't return any data:
    SELECT ISSUE_ID FROM MAP_ISSUES WHERE SDO_FILTER(GEOMETRY, sdo_geometry (2003, 8307, null, sdo_elem_info_array (1,1003,1),sdo_ordinate_array(-180,-90, 180,-90, 180,90, -180,90, -180,-90)) ) = 'TRUE';
    SELECT ISSUE_ID FROM MAP_ISSUES WHERE SDO_RELATE(GEOMETRY, sdo_geometry (2003, 8307, null, sdo_elem_info_array (1,1003,1),sdo_ordinate_array(-180,-90, 180,-90, 180,90, -180,90, -180,-90)), 'MASK=ANYINTERACT' ) = 'TRUE'
    Optimized polygon does return all data correctly:
    SELECT ISSUE_ID FROM MAP_ISSUES WHERE SDO_FILTER(GEOMETRY, sdo_geometry (2003, 8307, null, sdo_elem_info_array (1,1003,3),sdo_ordinate_array (-180,-90,180,90)) ) = 'TRUE'
    Smaller polygon select data correctly too.
    SELECT ISSUE_ID FROM MAP_ISSUES WHERE SDO_FILTER(GEOMETRY, sdo_geometry (2003, 8307, null, sdo_elem_info_array (1,1003,1),sdo_ordinate_array (52,-7, 54,-7 , 54,-5 , 52,-5, 52,-7)) ) = 'TRUE'
    I have tried changed polygon to be clockwise, counter clockwise, make the area a bit smaller( 160 instead of 180, 89 instead of 90) nothing has helped.
    My explanation than was, that Earth is sphere and each defined polygon defines TWO polygons in the sphere and there is convention that the smaller is chosen to select data. It would make sense along the previous results, but than I found one post which says that this is bug http://www.frontoracle.com/oracle-database/703/180703-size-of-are-of-interest-smaller-equals.html
    I have found in other thread that max only 1/2 of Earth could be selected Different results using SDO_RELATE with polygon and rectangle type but it seems not true, because optimized bounding box works fine!
    What is right? Is there anything in official documentation?
    Is it bug.
    Max 1/2 of Earth could be selected in one request.
    Each polygon defines two areas in the Earth and the smaller one is used to do spatial SDO_RELATE operation?
    Thanks!
    Regards,
    Zdenek

    Zdenek,
    A bug, or limititation, whichever you choose. IMHO if you ask for something, and don't get what you expect, it is a bug that could be fixed.
    But for 10g anywho, the following applies, which is why I choose 120 degree breaks for my code as it is less than 180...
    The following size limits apply with geodetic data:
    ■ No polygon element can have an area larger than one-half the surface of the Earth.
    ■ In a line, the distance between two adjacent coordinates cannot be greater than or
    equal to one-half the perimeter (a great circle) of the Earth.
    If you need to work with larger elements, first break these elements into multiple
    smaller elements and work with them. For example, you cannot create a geometry
    representing the entire ocean surface of the Earth; however, you can create multiple
    geometries, each representing part of the overall ocean surface. To work with a line
    string that is greater than or equal to one-half the perimeter of the Earth, you can add
    one or more intermediate points on the line so that all adjacent coordinates are less
    than one-half the perimeter of the Earth.
    Bryan

Maybe you are looking for

  • How to move an iTunes library

    I'm retiring and moving everything from my iMac to a MacBook Pro. Is there specific procedure anywhere for moving my iTunes library (lots of purchased movies and music plus my own stuff) from the iMac to the MBP? Thanks. LarryMcJ

  • New iPod shuffle won't stay on, charge, and not recognized by computer

    My daughter won a new iPod Shuffle that as far as we know has never been opened/used till today.  We have iTunes downloaded and working on our computer.  But when plugging in iPod via provided USB cable, the computer (and I've tried two different one

  • How to copy a report into my namespace

    how to copy a report into my namespace as said in this blog.... /people/michal.krawczyk2/blog/2005/11/09/xi-restarting-successfully-processed-messages

  • Converting word to pdf in A4 with specific margins

    I need  all my new forms designed in Word and converted into pdf  to be in A4 size with specific sized margins top, bottom, left and right as  per Standards guidelines. Do I need to set up Acrobat to do this or will it just convert exactly from MS Wo

  • HT201270 Will this change my maps from google to apple maps?

    My only concern about updating my iOS or Carrier Settings is that I don't want to loose Google Maps until Apple has worked on their map app and fixed most of the bugs in it.  My daughter upgraded her iOS and we have taken trips together.  Google is n