Where is DPM2012R2 Evaluation?

I want to eval System Center 2012 R2 Data Protection Manager.
I could not found only DPM.
Anyone know download URL?
for example, I found "System Center 2012 R2 Operations Manager – Evaluation (VHD) "
http://www.microsoft.com/en-us/download/details.aspx?id=40844
This page said
System Center 2012R2 Preview components that ship Evaluation VHDs can be found at the following locations:
* System Center 2012 R2 Configuration Manager – Evaluation (VHD)
* System Center 2012 R2 App Controller – Evaluation (VHD)
* System Center 2012 R2 Data Protection Manager – Evaluation (VHD)
* System Center 2012 R2 Operations Manager – Evaluation (VHD)
* System Center 2012 R2 Orchestrator – Evaluation (VHD)
* System Center 2012 R2 Service Manager – Evaluation (VHD)
* System Center 2012 R2 Service Manager Data Warehouse– Evaluation (VHD)
* System Center 2012 R2 Virtual Machine Manager – Evaluation (VHD)
DPM is not found.
other products are found.

Hi,
The eval was pulled because the SQL server had expired in the VM.  I will inquiry about getting a new one posted.
Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT]
This posting is provided "AS IS" with no warranties, and confers no rights.

Similar Messages

  • Airport Extreme - Worked excellent x 1 week, now it's very very slow - no idea why or where to start evaluating it

    So I recently purchased Airport Extreme 802.11n Wi-Fi...
    I have it set up to provide wireless for my laptop, Ipad2, AppleTV, and a printer...I'm in a small apartment and the wireless router is at the same desk as the laptop (which is usually used as a desktop style) so it has full bars.
    When it first set it all up, it was blazingly fast...and absolutely no problems. Then over the past few days, it has slowed tremendously and the only way to get full speed is to connect the ethernet cord directly to the laptop. When I try to switch back to the router Wi-Fi it slows to a crawl (we are talking dial-up modem 1990's in loading a picture)....When I switch it back to a direct connection it then downloads with no problems.
    I was reviewing older forum stuff but a lot of the terminology is over my head.
    Security is WAP2 personal
    I have 2 channels which it says are Automatic (6, 159)
    Looks like I have 5Ghz/2.4Ghz Airport IDs...
    It's uptodate with version 7.6
    It says I have 3 wireless clients - Is this the printer, Ipad2, and Apple TV? Or is it possible someone else is on my secure network?
    I just don't know where to start to figure out what's going on. I also have a wireless keyboard and mouse by logitech - could this be interfering? Unsure but I have those two next to each other but that shouldn't be affecting it after a week of it working perfect, should it?
    Any help is greatly appreciated.
    Thanks!

    It's possible that the Airport card has issues (I had mine replaced on my older MBP a couple of years ago).  I would run a Hardware Test to see if that develops anything.  If not I would take it to the Apple store Genius bar.
    (make an appointment first).
    http://support.apple.com/kb/HT1509
    Ciao.

  • Where to download Sun IdM/Oracle Waveset evaluation version [full]

    Hi,
    Could you advice me, where to download evaluation copy of sun IdM/Wave Set? I downloaded 8.1 but it looks for pre-installations.
    Appreciate your help!
    Thanks
    Prakash

    Sun IDM 8.1 can be installed from scratch. No previous IDM versions are required. It is a full installation. Simply use MySQL as the repository database and Apache Tomcat as your application server.
    Specific installation instructions for Sun IDM 8.1 on Tomcat can be found here: http://docs.sun.com/app/docs/doc/820-5594/ahtbq?l=en&a=view
    Of course, first you need to prepare the DB and App Server: http://docs.sun.com/app/docs/doc/820-5594/ghrqf?l=en&a=view and http://docs.sun.com/app/docs/doc/820-5594/ghrsw?l=en&a=view, respectively.
    Good luck.
    Edited by: user12611524 on Dec 28, 2010 2:55 PM

  • Function is called in Where clause

    I am analyzing the script and found one function is called within the SQL statement in where clause. I like to know is there any alternate way to improve the performance.
    If I move the function call prior to this select statement and update the result of function value in new column in existing table/ are in new tmp table. Will there be performance improvement
    Or any other better way... Plz suggest me.
    - Mahesh

    You should include the query code as well as the execution plan.
    I figure out you mean your arguments in the where clause are evaluating a function and this prevents the index from being used, provoking a reduced query performance. If this is the case, then you should consider using function based indexes instead.
    ~ Madrid
    http://hrivera99.blogspot.com/

  • Project evaluation ... budget

    Hello,
    I would like to know what I have to do in order to get a evaluation about the budget in my project. This would be nice to see if a project is running out of budget.
    Which evaluation / extract is able to do this and what is possible with this evaluation? Which values can I see and what do I have to set up in order to see values for this report. Where does this evaluation gets the values from?
    I would be really happy if someone could bring some light into the dark,
      Thx you,
      Vanessa
    P.S. In this context .... there are some evaluations that refer to "linked objects". Could someone tell me how to link this "objects" to the evaluation. Is this about object linking like SD-links and so on?

    Vanessa,
    this should not be too difficult... The attribute is standard delivered - DPR_TV_BUDGET for the WBS (in SPRO under 'define attributes and object types for evaluations') and it extracts data from R/3, so if you replciate your CPR you need no object link...(that was for cProjects 3.1). You already get your project budget on the projects dashboard screen and on the detailed data screen on the Accounting Tab, when you select a certain WBS. You need to make sure that you have budget data in the replicated PS project or for the Internal order. If you want more details, I think you might need to define another object to bring in the assigned costs - commitments and actuals - that deplete your budget and see what remains available...if you have AVAC activated in PS then maybe you can try and push data from there...There are many scenarios here, but you should get the budget amount any problems.
    Cheers,
    lacramioara

  • Condition "after WHERE" versus "after CONNECT"

    What is difference in sematics/meaning/result if condition "T.COL1 is null" is written after "connect by" clause, or, after "where"-caluse?
    See query below.
    Thanks.
    select *
    from table1 T
    where T.COL1 is null
    start with T.PARENT_ID is null
    connect by prior T.ID = g.PARENT_ID and T.COL1 is null;
    Edited by: CharlesRoos on Jan 11, 2010 2:20 AM

    Hi,
    The CONNECT BY part of a query is done before the WHERE clause is evaluated. (Except for join conditions. See Rob's message, 2nd after this one.)
    Conditions in the CONNECT BY clause may eliminate a node and its descendents (that is, any node that is related to the root through the eliminated node), but conditions in a WHERE clause only effect a single row.
    There are so few NULLs in the scott.emp table that the condition "col1 IS NULL" won't make a good example.
    There's nothing special about that condition, so I'll use the condition "jpob != 'MANAGER'" instead. If that confuses you, create a copy of scott.emp table, but change the job to NULL for all managers.
    Here's a basic CONNECT BY query, that includes the entire hierarchy starting with KING:
    PROMPT     Query 1: No condition concerning job
    SELECT     LPAD ( ' '
              , 3 * (LEVEL - 1)
              ) || ename          AS i_ename
    ,     LEVEL
    ,     empno
    ,     mgr
    ,     job
    FROM     scott.emp
    START WITH     ename     = 'KING'
    CONNECT BY     mgr     = PRIOR empno
    Query 1: No condition concerning job
    I_ENAME                   LEVEL      EMPNO        MGR JOB
    KING                          1       7839            PRESIDENT
       JONES                      2       7566       7839 MANAGER
          SCOTT                   3       7788       7566 ANALYST
             ADAMS                4       7876       7788 CLERK
          FORD                    3       7902       7566 ANALYST
             SMITH                4       7369       7902 CLERK
       BLAKE                      2       7698       7839 MANAGER
          ALLEN                   3       7499       7698 SALESMAN
          WARD                    3       7521       7698 SALESMAN
          MARTIN                  3       7654       7698 SALESMAN
          TURNER                  3       7844       7698 SALESMAN
          JAMES                   3       7900       7698 CLERK
       CLARK                      2       7782       7839 MANAGER
          MILLER                  3       7934       7782 CLERK
    14 rows selected.The condition "job != 'MANAGER' in the WHERE clause removes only the 3 rows where job = 'MANAGER':
    {code}
    PROMPT     Query 2: Condition in WHERE clause
    SELECT     LPAD ( ' '
         , 3 * (LEVEL - 1)
         ) || ename          AS i_ename
    ,     LEVEL
    ,     empno
    ,     mgr
    ,     job
    FROM     scott.emp
    WHERE     job     != 'MANAGER'
    START WITH     ename     = 'KING'
    CONNECT BY     mgr     = PRIOR empno
    Query 2: Condition in WHERE clause
    I_ENAME LEVEL EMPNO MGR JOB
    KING 1 7839 PRESIDENT
    SCOTT 3 7788 7566 ANALYST
    ADAMS 4 7876 7788 CLERK
    FORD 3 7902 7566 ANALYST
    SMITH 4 7369 7902 CLERK
    ALLEN 3 7499 7698 SALESMAN
    WARD 3 7521 7698 SALESMAN
    MARTIN 3 7654 7698 SALESMAN
    TURNER 3 7844 7698 SALESMAN
    JAMES 3 7900 7698 CLERK
    MILLER 3 7934 7782 CLERK
    11 rows selected.
    {code}
    Putting the same condition in the CONNECT BY clause means that the condition is part of what determines a descendant.
    X will not be considered a child of Y is X's job is 'MANAGER'; therefore, X will not make it into the result set, and none of X's descendants will either.
    {code}
    PROMPT     Query 3: Condition in CONNECT BY clause
    SELECT     LPAD ( ' '
         , 3 * (LEVEL - 1)
         ) || ename          AS i_ename
    ,     LEVEL
    ,     empno
    ,     mgr
    ,     job
    FROM     scott.emp
    START WITH     ename     = 'KING'
    CONNECT BY     mgr     = PRIOR empno
         AND     job     != 'MANAGER'
    Query 3: Condition in CONNECT BY clause
    I_ENAME LEVEL EMPNO MGR JOB
    KING 1 7839 PRESIDENT
    {code}
    Note that this does not effect roots. In Query 4, below is the same as Query 3 above, except that the START WITH mentions JONES, not KING.
    {code}
    PROMPT     Query 4: Condition in CONNECT BY clause does not affect root
    SELECT     LPAD ( ' '
         , 3 * (LEVEL - 1)
         ) || ename          AS i_ename
    ,     LEVEL
    ,     empno
    ,     mgr
    ,     job
    FROM     scott.emp
    START WITH     ename     = 'JONES'
    CONNECT BY     mgr     = PRIOR empno
         AND     job     != 'MANAGER'
    Query 4: Condition in CONNECT BY clause does not affect root
    I_ENAME LEVEL EMPNO MGR JOB
    JONES 1 7566 7839 MANAGER
    SCOTT 2 7788 7566 ANALYST
    ADAMS 3 7876 7788 CLERK
    FORD 2 7902 7566 ANALYST
    SMITH 3 7369 7902 CLERK
    {code}
    JONES is in the result set, despite being a MANAGER.
    It doesn't that JONES isn't considered a child of anybody else. JONES was not picked through the CONNECT BY clause, only the START WITH clause.
    Edited by: Frank Kulash on Jan 11, 2010 9:46 AM
    As Rob said, join conditions in the WHERE clause are done before START WITH and CONNECT BY. Sorry, I forgot to mention that.
    When you have to join to a CONNECT BY query, it's usually more efficient to do the CONNECT BY in a sub-query, and then join the results to the other table(s), if possible.

  • Evaluation license for KAM AP based wIPS Service is expired.

    We have a WCS as well as a MSE.  We where using the evaluation license for a time, however it expired.  Since then we have been getting an alart in the WCS that it has expired, we have no interist in getting a licnese for the service, how do I stop the alart?

    Josh,
    Have you tried deleting the license file from the license manager?
    Justin
    Sent from Cisco Technical Support iPhone App

  • When a+b+c is not equal to a+c+b

    Hi,
    I would be pleased to have some comment on the following :
    if a+b+c != a+c+b then something the + operator is not working as it should !?
    SQL> select
    a,b,c,a+b+c,a+c+b
    from
    (select date '2005-02-28' a, numtoyminterval(1,'MONTH') b, numtodsinterval(1,'DAY') c from dual);
    A          B             C                   A+B+C      A+C+B
    28.02.2005 +000000000-01 +000000001 00:00:00 29.03.2005 01.04.2005

    Hi Laurent
    As James pointed out, the behaviour with add_months is different but gives a consistent result for the 2 orders. This I can understand because of the functionality and the additional logic that can be placed in the function call.
    SQL> select
      2     a+b+c,
      3     a+c+b,
      4     a+b,
      5     a+c,
      6     add_months(a,1) + 1 abc,
      7     add_months(a+1,1) acb
      8  from
      9     (select
    10             date '2005-02-28' a,
    11             numtoyminterval(1,'MONTH') b,
    12             numtodsinterval(1,'DAY') c
    13     from
    14             dual
    15     );
    A+B+C     A+C+B     A+B       A+C       ABC       ACB
    29-MAR-05 01-APR-05 28-MAR-05 01-MAR-05 01-APR-05 01-APR-05
    SQL> select
      2     date '2005-03-29' - numtoyminterval(1,'MONTH')
      3  from
      4     dual;
            date '2005-03-29' - numtoyminterval(1,'MONTH')
    ERROR at line 2:
    ORA-01839: date not valid for month specified
    SQL>
    SQL> select
      2     add_months(date '2005-03-29',-1)
      3  from
      4     dual;
    ADD_MONTH
    28-FEB-05So based on this, I don't see how the + operator could be commutative for anything other than numbers. Dates and intervals are a special case where order of evaluation does (and should?) effect the result...aren't they?

  • User-defined function in order by?

    Hey guys.  We're trying to port our postgres db to Oracle, and I'm stumbling on this one issue.  We have columns called 'sortSequences', which are arbitrarily long arrays of integers.  For POC purposes, I am using varray(), but that probably won't work as an production implementation, because of it's strongly-defined size.  Anyway, the crux of the problem is that I need to be able to select * from foo order by sortSequence, where the ordering evaluation is custom code.  The array of integers essentially represent infinite-precision math, and we have a deterministic algorithm for comparing them, but one cannot simply produce a value from them (which I think prevents me from using a map member function in a user-defined object type.)  In other words, we don't really care what the values are, we are just using them collectively as a sorting index.  An aggregate function didn't look like the right answer, and a simple scalar function is out of the question.  We were looking at domain indexes, but it's not clear to me that even if we created an operator bound to our user-defined type that the db would use that function for order by evaluation...
    Can anybody think of a solution for this problem?  If we absolutely have to live without this functionality, we can replicate it in app code, but we wish to avoid that at all costs...
    thanks,
    brian

    Doesn't look very promising for a general case.
    Even for short sequences and moderate number values the computed numbers to order by are quite large.
    with
    data_table as
    (select '[10,1,1]' csv from dual union all
    select '[1,5,-1]' from dual union all
    select '[1,1,1,1]' from dual union all
    select '[3,-5,1,3,2]' from dual union all
    select '[1,1,2]' from dual union all
    select '[1,20]' from dual union all
    select '[2]' from dual union all
    select '[1,7,1]' from dual
    mapped as
    (select csv,
            lvl,
            item - min(item) over (order by null rows between unbounded preceding and unbounded following) n,
            max(item) over (order by null rows between unbounded preceding and unbounded following) -
            min(item) over (order by null rows between unbounded preceding and unbounded following) m,
            max(lvl) over (order by null rows between unbounded preceding and unbounded following) x
       from (select csv,
                    level lvl,
                    to_number(regexp_substr(t_csv,'[^,]+',1,level)) item
               from (select csv,
                            ltrim(rtrim(csv,']'),'[') t_csv
                       from data_table
             connect by level <= regexp_count(csv,',') + 1
                    and prior csv = csv
                    and prior sys_guid() is not null
    joined as
    (select l.csv,l.lvl,nvl(m.n,0) n,l.m,row_number() over (partition by l.csv order by l.lvl desc) rn
       from mapped m
            right outer join
            (select csv,lvl,m
               from (select level lvl,
                            (select max(m) from mapped) m
                               from dual
                             connect by level <= (select max(x) from mapped))
                    cross join
                    (select csv from data_table)
            ) l
         on l.csv = m.csv
        and l.lvl = m.lvl
    order by csv,lvl
    select csv,o
      from (select csv,rn,o
              from joined
             model
             partition by (csv)
             dimension by (lvl)
             measures (rn,n,m,0 o)
             rules
             (o[lvl] = (nvl(o[cv(lvl) - 1],0) + n[cv(lvl)]) * m[cv(lvl)])
    where rn = 1
    order by o
    CSV
    O
    [1,1,1,1]
    61035000
    [1,1,2]
    61046875
    [1,5,-1]
    62562500
    [1,7,1]
    63375000
    [1,20]
    68359375
    [2]
    68359375
    [3,-5,1,3,2]
    78223925
    [10,1,1]
    148921875

  • BW modelling Infoobjects ques

    hi
    i am working on a project where we are evaluating the trsnaportation costs and revenue
    when we ship goods from one vendor to another . The R/3 custom table with this information
    has 2 fields - from vendor , to vendor . these vendors are a part of the 0vendor master data .
    In bw , i wish to report using these ( to and from vendor ) , also i wnat to be able to use the
    0vendor attributes ( ex :0vendor has attributes like act grp , payee etc ) . I created two
    new infoobjects (ztovendor and zfrmvendor ) with 0vendor as reference so that i would be able
    to report by vendor numbers and the master data . however , now when i try to report on my cube
    using ztovendor i do not see the attributes under this infoobject ..........
    is my approach to reporting correct ? am i missing out something ?
    please guide me as to how to implement such a scenario .
    thanks

    Hi,
    your approach seems to be correct. If you say that you can't see the attributes, do you mean that the attributes are not available as navigational attributes?
    In this case you just have to go back to the InfoObject maintenance screen and switch the desired attributes from 'display' to 'navigational' (Even though zfrvendor / ztovendor have reference char 0vendor, all attributes are initially set to 'display').
    Hope this helps (if it does, please award points...)
    Best regards,
    Chris

  • Decode Vs Case:  context switching?

    So I was told recently that among other reasons, CASE is "better" than Decode in SQL statements because Decode context switches to PL/SQL to perform the checks.
    I can't find anything in the documentation to support this.
    this site here:
    http://www.dba-oracle.com/oracle_news/2005_11_23_case_decode_machinations.htm
    mentions that one of the disadvantages of decode is that it's post-retrieval, but it also seems to mention that so is CASE.
    anyone have any idea where someone may have got the "context switching" idea from?

    have often wondered why you would use CASE in PL/SQL when it has IF THEN control structures. Yes, you could, however readability would suffer. But what is more important CASE has a form where expression is evaluated only once:
    SQL> SET SERVEROUTPUT ON
    SQL> DECLARE
      2      X NUMBER;
      3  BEGIN
      4      PKG1.CNT := 2;
      5      X := CASE PKG1.F1
      6             WHEN 1 THEN 1
      7             WHEN 2 THEN 2
      8             WHEN 3 THEN 3
      9           END;
    10      DBMS_OUTPUT.PUT_LINE('X = ' || X);
    11      DBMS_OUTPUT.PUT_LINE('PKG1.CNT = ' || PKG1.CNT);
    12  END;
    13  /
    Call to PKG1.F1
    X = 3
    PKG1.CNT = 3
    PL/SQL procedure successfully completed.
    SQL> DECLARE
      2      X NUMBER;
      3  BEGIN
      4      PKG1.CNT := 2;
      5      IF PKG1.F1 = 1
      6        THEN X := 1;
      7      ELSIF PKG1.F1 = 2
      8        THEN X := 2;
      9      ELSIF PKG1.F1 = 3
    10        THEN X := 3;
    11      END IF;
    12      DBMS_OUTPUT.PUT_LINE('X = ' || X);
    13      DBMS_OUTPUT.PUT_LINE('PKG1.CNT = ' || PKG1.CNT);
    14  END;
    15  /
    Call to PKG1.F1
    Call to PKG1.F1
    Call to PKG1.F1
    X =
    PKG1.CNT = 5
    PL/SQL procedure successfully completed.
    SQL> In such case you would have to introduce a temp variable:
    SQL> CREATE OR REPLACE
      2  PACKAGE PKG1
      3  IS
      4  CNT NUMBER;
      5  FUNCTION F1 RETURN NUMBER;
      6  END;
      7  /
    Package created.
    SQL> CREATE OR REPLACE
      2  PACKAGE BODY PKG1
      3  IS
      4  FUNCTION F1 RETURN NUMBER
      5  IS
      6  BEGIN
      7  DBMS_OUTPUT.PUT_LINE('Call to PKG1.F1');
      8  CNT := CNT + 1;
      9  RETURN CNT;
    10  END;
    11  END;
    12  /
    Package body created.
    SQL> SET SERVEROUTPUT ON
    SQL> DECLARE
      2      X NUMBER;
      3  BEGIN
      4      PKG1.CNT := 2;
      5      X := CASE PKG1.F1
      6             WHEN 1 THEN 1
      7             WHEN 2 THEN 2
      8             WHEN 3 THEN 3
      9           END;
    10      DBMS_OUTPUT.PUT_LINE('X = ' || X);
    11      DBMS_OUTPUT.PUT_LINE('PKG1.CNT = ' || PKG1.CNT);
    12  END;
    13  /
    Call to PKG1.F1
    X = 3
    PKG1.CNT = 3
    PL/SQL procedure successfully completed.
    SQL> DECLARE
      2      X NUMBER;
      3      TMP NUMBER;
      4  BEGIN
      5      PKG1.CNT := 2;
      6      TMP := PKG1.F1;
      7      IF TMP = 1
      8        THEN X := 1;
      9      ELSIF TMP = 2
    10        THEN X := 2;
    11      ELSIF TMP = 3
    12        THEN X := 3;
    13      END IF;
    14      DBMS_OUTPUT.PUT_LINE('X = ' || X);
    15      DBMS_OUTPUT.PUT_LINE('PKG1.CNT = ' || PKG1.CNT);
    16  END;
    17  /
    Call to PKG1.F1
    X = 3
    PKG1.CNT = 3
    PL/SQL procedure successfully completed.
    SQL> SY.

  • Sdo_nn is not showing desired results

    Hello,
    We have the following query :
    SELECT p.codigo_proveedor_ca, p.descripcion AS Proveedor, DECODE(p.habitual,0,'N','S') AS HAB, DECODE(p.h_24,0,'N','S') H24,
         b.codigo_base, b.tipo_via || ' ' || b.nom_via || ',' || b.numero_via || ' ' || B.PISO AS DIRECCION_PROV, b.codigo_pais,
    b.codigo_provincia, b.codigo_ine, b.codigo_zona, mg.numero AS NUMERO_GEN, b.localidad, ROUND(MDSYS.SDO_NN_DISTANCE(1),0) AS DISTANCIA,
    b.GIS_X, b.GIS_Y, b.GIS_NIVEL_XY, b.GIS_GEO_OK, b.GIS_TIPO_SRIDENUM
    FROM SAT_BASES_PROVEEDORES b,
         SAT_BASE_PROVEEDOR_MEDIOS_GEN mg,
         SAT_PROVEEDORES_CA p
    WHERE b.codigo_pais = 'ESP' AND b.activo = 1
    AND mg.codigo_proveedor_ca = b.codigo_proveedor_ca AND mg.codigo_base = b.codigo_base
         -- Medio Genérico 'TAXI'
         AND mg.codigo_medio_generico = '2' AND mg.activo = 1 AND P.ACTIVO = 1
         AND p.codigo_proveedor_ca = b.codigo_proveedor_ca
         -- Coordinates of GRANOLLERS
         AND SDO_NN(b.GEOMETRIA,MDSYS.SDO_Geometry(2001, 1000000,MDSYS.SDO_Point_type(188161,5043776,NULL),NULL, NULL) ,
         'SDO_BATCH_SIZE = 25', 1 ) = 'TRUE'
    ORDER BY DISTANCIA;
    What we want is to get the providers which are near to a given town. To get this we are using SDO_NN function and also
    SDO_NN_DISTANCE to calculate the distance to the given coordinates.
    Our problem is that there are two providers with the same coordinates that should be shown in the query result but one of them is not shown and we don't understand why.
    If we use SDO_NUM_RES instead of SDO_BATCH_SIZE the provider is shown, but as far as I know, if you use this parameter not all the WHERE clauses are evaluated. Am I wrong?
    What are we doing wrong?
    Thanks in advance,
    Eva.

    Are you on Oracle 9i? In 9i, I have never been able to get this query to work successfully this way. I had to rewrite it to use a in-line view and a rownum and make some other changes. I think it is buggy, as are many of the 9i spatial objects (full of horrid memory leaks etc.)
    I have been able to hack around the fact that it cannot find the nearest neighbor on it's own, by using an inline view in this way, but it has holes, I am sure:
    Select DISTANCE, (list all your other selections) from
    SELECT /*+ordered*/ SDO_NN_DISTANCE(1) DISTANCE, p.codigo_proveedor_ca, p.descripcion AS Proveedor, DECODE(p.habitual,0,'N','S') AS HAB, DECODE(p.h_24,0,'N','S') H24,
    b.codigo_base, b.tipo_via || ' ' || b.nom_via || ',' || b.numero_via || ' ' || B.PISO AS DIRECCION_PROV, b.codigo_pais,
    b.codigo_provincia, b.codigo_ine, b.codigo_zona, mg.numero AS NUMERO_GEN, b.localidad, ROUND(MDSYS.SDO_NN_DISTANCE(1),0) AS DISTANCIA,
    b.GIS_X, b.GIS_Y, b.GIS_NIVEL_XY, b.GIS_GEO_OK, b.GIS_TIPO_SRIDENUM
    FROM SAT_BASES_PROVEEDORES b,
    SAT_BASE_PROVEEDOR_MEDIOS_GEN mg,
    SAT_PROVEEDORES_CA p
    WHERE b.codigo_pais = 'ESP' AND b.activo = 1
    AND mg.codigo_proveedor_ca = b.codigo_proveedor_ca AND mg.codigo_base = b.codigo_base
    -- Medio Genérico 'TAXI'
    AND mg.codigo_medio_generico = '2' AND mg.activo = 1 AND P.ACTIVO = 1
    AND p.codigo_proveedor_ca = b.codigo_proveedor_ca
    -- Coordinates of GRANOLLERS
    AND SDO_NN(b.GEOMETRIA,MDSYS.SDO_Geometry(2001, 1000000,MDSYS.SDO_Point_type(188161,5043776,NULL),NULL, NULL) ,
    'SDO_BATCH_SIZE = 25', 1 ) = 'TRUE'
    AND ROWNUM < 1000
    ORDER BY DISTANCE
    WHERE ROWNUM < 2';
    This should give you the closest result. If you want the closest 2, you would set that in the last line. I had to mess around with the rownum < 1000 line in my query. It appears that the order by distance has no affect. If I set it to ROWNUM < 50, often times, the closest 2 items weren't in the inner select elements. So they weren't available in the outer results.
    I also found this issue very frustrating. I actually had a hard time believeing it was so junky, until I proved it was the problem with this statement. Please let us know if it solves your issue also.

  • Function count() meets group by

    Hi guys,
    I got an application error, and the root cause is like below, not sure if anyone have same experience:
    We will validate the return row count, and it's tricky that the old code was LIKE:
    SELECT COUNT(1) FROM table_name WHERE 1 != 1;
    0
    the output is only one row.
    BUT, when we add a "GROUP BY", why it doesn't return any record:
    SELECT COUNT(1) FROM table_name WHERE 1 != 1 GROUP BY col_name;
    output is nothing.
    Why the result is different with "GROUP BY"?
    Edited by: Wang, Chen on Jul 4, 2012 7:31 PM
    Edited by: Wang, Chen on Jul 4, 2012 7:44 PM

    Hi,
    The COUNT() function (and other aggregate functions) works exactly as described in Oracle documentation. It is not commonly known behaviour however it is well documented in standard Oracle documentation. Yes, there is a very slight difference how aggregate functions are evaluated with and without GROUP BY clause.
    Oracle® Database SQL Language Reference 11g Release 2 (11.2)
    Aggregate Functions
    Aggregate functions return a single result row based on groups of rows, rather than on single rows. Aggregate functions can appear in select lists and in ORDER BY and HAVING clauses. They are commonly used with the GROUP BY clause in a SELECT statement, where Oracle Database divides the rows of a queried table or view into groups. In a query containing a GROUP BY clause, the elements of the select list can be aggregate functions, GROUP BY expressions, constants, or expressions involving one of these. Oracle applies the aggregate functions to each group of rows and returns a single result row for each group.
    If you omit the GROUP BY clause, then Oracle applies aggregate functions in the select list to all the rows in the queried table or view. You use aggregate functions in the HAVING clause to eliminate groups from the output based on the results of the aggregate functions, rather than on the values of the individual rows of the queried table or view.So if you have the GROUP BY clause then Oracle will first apply the WHERE clause to filter out records, then it will form groups, i.e. look for each distinct value of col_name and finally it will apply the aggregate function to each group of rows and return a single result row for each group. Because after evaluation of WHERE 1 != 1 there is nothing left (zero records) then there will zero groups formed and there will be one row returned for each of zero groups -> no rows returned.
    It works differently when you omit the GROUP BY clause. Oracle applies aggregate functions to all the rows in the queried table or view. If there is no GROUP BY then it is known upfront that Oracle will have exactly one group of rows. So there is already one group of rows before WHERE clause is evaluated. And you will always get this one row returned for aggregate functions.
    This is not a bug. This is by design. It works as it should and as it is documented. It is a nuance of SQL language that is not commonly known or frequently forgotten, but it is not a problem of Oracle or SQL language.

  • Max (date) in sub-query

    I have an issue with a big view and several queries running on it where the max (date) is required in the sub-select (example below). When I run traces and explain, the perf problem is when the where cluase is evaluated, the view is pulled second time - so I basically use this view twice. The fact that the date in the underlined table is indexed did not help.
    I tried to use "ROW_NUMBER() OVER (ORDER BY date ASC) AS row_number, " rather to select the max(date) in teh sub query but I get only 1 records returned by the query instead the expected about 25,000.
    Need help on how to correct the max(date) to perform better and also to understand how to correct the ROW_NUMBER() not to limit me to 1 row.
    Thanks a lot for the help, Tom
    create view test_date as select * from user_objects;
    select * --(I have specific columns in the real query)
    from test_date t1
    where LAST_DDL_TIME in
    (select max(LAST_DDL_TIME)
    from test_date t2
    where t1.OBJECT_ID=t2.OBJECT_ID --(more clauses to limit the result but not reflecting the problem)
    and t1.OBJECT_NAME =t2.OBJECT_NAME
    and OBJECT_TYPE not in('TABLE')
    group by t2.OBJECT_ID , t2.OBJECT_NAME )

    I got the query to run - with dense ranck and row-Number I get the same results. My partition by cluse was wrong. But the perfromance is not much better.
    Any other idea on how to optimize a query that uses pattern like below and needs to return all rows from a table that have the max enter date.
    Thanks a lot, tom
    Example:
    col1 col2 col3
    1 sysdate 'I need this record'
    2 sysdate 'I need this record'
    3 sysdate 'I need this record'
    4 sysdate 'I do NOT need this record'
    5 sysdate 'I do NOT need this record'
    5 sysdate+3 'I need this record'
    5 sysdate+2 'I do NOT need this record'
    4 sysdate+3 'I need this record'
    4 sysdate+2 'I do NOT need this record'
    4 sysdate+1 'I do NOT need this record'
    My query corrently is using the following construcion:
    select col1, col2 , col3
    from test_table t
    where 1,2,3
    and col3 = (select max(col3) from test_table t2 where t2.col1 = t.col1) group by t2.col1

  • Enhance OM infotype

    Hi
    I want to enhance infotype 1050 with a note. Could anyone explain (just in short) how i could do that? I can imagine how to enhance with a single entry field - but in this case i want a note (like in 1002 or something like that).
    Is there an easy way to do this?
    Jakob

    Hi Jakob,
    1002 infotype is a table infotype which stores tabnr against every entry in 1002.
    the actual text is stored in hrt1002 where the tabnr is the key field and the seqnr is each line entered of 79 characters.
    I suggest not to follow the same approach in 1050, instead enhance the infotype to include a field which stores a unique no. generated by some custom number range. Then create a text id and element and store the text against it in the z program generated for the enhanced infotype using function modules read_text, save_text.
    If you still do not want to do this the best approach would be to add a subtype in 1002 infotype where the job evaluation results are stored, this will require no development.
    Regards,
    Divya

Maybe you are looking for