Purchase Order most recent date

Hi,
I have a report and want to retrieve a list of Purchase Order numbers related to several items.  However, I don't want all the POs, but I only want the most recent PO for each item.
I am trying the following:
SELECT docnum FROM opor WHERE docdate = max(docdate)
but I am getting the following error:
Msg 147, Level 15, State 1, Procedure getPONoSpendAnalysis, Line 20
An aggregate may not appear in the WHERE clause unless it is in a subquery contained in a HAVING clause or a select list, and the column being aggregated is an outer reference.
Any ideas of how I can go about this?
Many thanks.

None of these solved my issue unfortunately.
The following is my query:
select
               t0.docnum as 'Issue No.'
,               t0.docdate as 'Issue Date'
,               t1.itemcode as 'FA Code'
,               t1.dscription as 'FA Desc.'
,               t3.expensesac as 'Expense A/c'
,               t4.U_eHypCode2 as 'Hyperion Code'
,               t5.docentry as 'PO No.'
from
               oige t0 left outer join ige1 t1 on t0.docentry = t1.docentry
                         left outer join oitm t2 on t2.itemcode = t1.itemcode
                         left outer join oitb t3 on t3.itmsgrpcod = t2.itmsgrpcod
                         left outer join oact t4 on t4.acctcode = t3.expensesac
                         left outer join por1 t5 on t5.itemcode = t1.itemcode
where
               (t2.assetitem = 'Y')
I want the column 'PO No.' to give me the last dated Purchase Order for the particular item code (t1.itemcode)
Any help please?
Thanks.

Similar Messages

  • How do I get the numbers ipad app to plot a graph of dates against values, where the most recent date is on the right of the graph, but the most recent date is at the top rather than bottom of the rows in the table?

    How do I get the numbers ipad app to plot a graph of dates against values, where the most recent date is on the right of the graph, but the most recent date is at the top rather than bottom of the rows in the table?
    Also how can it be a line graph without plotting a circle at each value?
    Thanks this is very frustrating

    Make a copy of the table and produce your Line chart or Bar chart from the copy. Sort the copy into the order you want to see in your chart.
    Alternately you could use a Scatter Chart...
    Jerry

  • "next" most recent date

    Hello!
    I have an order header record with a order line detail table.
    ORDERS
    OrderID > 1
    ORDER_LINES
    orderID1, line1, item1, date_due
    1,1,ITEM1,01-MAR-07
    1,2,ITEM2,15-MAR-07
    1,3,ITEM3,01-ARP-07
    I want to select the single next most recent date from order_lines where the date_due is the next future date closest to sysdate. There could also be several lines with dates beyond that, but I'm only interested in the next most recent line.
    For the example above, if sysdate = 03-MAR-07 the query would return order 1, line 2 (with the date of 15-mar-07).
    I've seen example in the forum with max(), however as pointed out, there could be several future line dates out there, I'm only interested in the next one from the current sysdate.
    In addition there could be no lines at all that map to the order id, requiring a NLV type of test output.
    Thanks!

    Maybe like this?
    SQL> select * from order_lines;
                ORDERID1                LINE1 ITEM1      DATE_DUE
                       1                    1 ITEM1      01-MAR-2007
                       1                    2 ITEM2      15-MAR-2007
                       1                    3 ITEM3      01-APR-2007
    SQL> select *
      2  from
      3  (
      4     select ol.*
      5           ,dense_rank() over (partition by orderid1 order by date_due) dr
      6     from   order_lines ol
      7     where  date_due > trunc(sysdate)
      8  )
      9  where dr = 1;
                ORDERID1                LINE1 ITEM1      DATE_DUE                      DR
                       1                    2 ITEM2      15-MAR-2007                    1

  • Select most recent DATE for an ID.

    Hi All,
    I need to SELECT the records with the most recent DATE for each ID. A DATE range is part of the selection criteria.
    My data.
    MY_ID MY_DATE
    1684662 26-JAN-09
    1424097 27-JAN-09
    1684663 27-JAN-09
    1684664 27-JAN-09
    1684672 28-JAN-09
    0689073 28-JAN-09
    1052476 21-JAN-09
    1052476 21-JAN-09
    1360828 23-JAN-09
    1684661 23-JAN-09
    1052476 30-JAN-09
    1052476 30-JAN-09
    1052476 30-JAN-09
    1052476 30-JAN-09
    The code below works fine when selecting 1 ID in the SUBSELECT, but with multiple ID it still selects rownum=1 (of course). This as far as my thinking takes me.
    SELECT my_id,
    my_date
    FROM
    (SELECT my_id,
    my_date
    FROM my_table
    ORDER BY my_date DESC
    WHERE rownum = 1
    AND *{color:#ff0000}my_id = 1052476{color}*
    AND TO_CHAR(my_date,'YYYY/MM/DD') BETWEEN '2009/01/01' AND '2009/01/31';
    If I could somehow pass the SELECT ID into the SUBSELECT WHERE clause I should have this done.
    Any suggestions?
    Thank You in Advance for Your help,
    Lou

    One of many possible soultions.
    ME_XE?with data as
      2  (
      3     select 1684662 as id, to_date('26-JAN-09','dd-mon-yyyy') as the_date from dual union all
      4     select 1424097 as id, to_date('27-JAN-09','dd-mon-yyyy') as the_date from dual union all
      5     select 1684663 as id, to_date('27-JAN-09','dd-mon-yyyy') as the_date from dual union all
      6     select 1684664 as id, to_date('27-JAN-09','dd-mon-yyyy') as the_date from dual union all
      7     select 1684672 as id, to_date('28-JAN-09','dd-mon-yyyy') as the_date from dual union all
      8     select 0689073 as id, to_date('28-JAN-09','dd-mon-yyyy') as the_date from dual union all
      9     select 1052476 as id, to_date('21-JAN-09','dd-mon-yyyy') as the_date from dual union all
    10     select 1052476 as id, to_date('21-JAN-09','dd-mon-yyyy') as the_date from dual union all
    11     select 1360828 as id, to_date('23-JAN-09','dd-mon-yyyy') as the_date from dual union all
    12     select 1684661 as id, to_date('23-JAN-09','dd-mon-yyyy') as the_date from dual union all
    13     select 1052476 as id, to_date('30-JAN-09','dd-mon-yyyy') as the_date from dual union all
    14     select 1052476 as id, to_date('30-JAN-09','dd-mon-yyyy') as the_date from dual union all
    15     select 1052476 as id, to_date('30-JAN-09','dd-mon-yyyy') as the_date from dual union all
    16     select 1052476 as id, to_date('30-JAN-09','dd-mon-yyyy') as the_date from dual
    17  )
    18  select id, the_date
    19  from
    20  (
    21     select id, the_date, max(the_date) over (partition by id) as max_the_date
    22     from data
    23  )
    24  where the_date = max_the_date;
                    ID THE_DATE
                689073 28-JAN-0009 12 00:00
               1052476 30-JAN-0009 12 00:00
               1052476 30-JAN-0009 12 00:00
               1052476 30-JAN-0009 12 00:00
               1052476 30-JAN-0009 12 00:00
               1360828 23-JAN-0009 12 00:00
               1424097 27-JAN-0009 12 00:00
               1684661 23-JAN-0009 12 00:00
               1684662 26-JAN-0009 12 00:00
               1684663 27-JAN-0009 12 00:00
               1684664 27-JAN-0009 12 00:00
                    ID THE_DATE
               1684672 28-JAN-0009 12 00:00
    12 rows selected.
    Elapsed: 00:00:00.03

  • Select most recent date only

    I'm quite new to discoverer so please bear with me.
    I have a query that returns e.g. 16 records.
    One of the fields is a date field.
    What I want to do is put a condition on the date field so that it only returns the record with the most recent date.
    Thanks.

    let me explain it to u in detail
    i have the following fields
    CONTRACTNUM FIRMTYPE FIRM A FIRM B FIRM % NTP_ACTUAL
    123456 P ABC XXX 96 MM/DD/YYYY
    S XXX DEC 4 MM/DD/YYYY
    P ABC XXX 96 MM/DD/YYYY
    S XXX DEC 4 MM/DD/YYYY
    Here the CONTRACTNUM IS unique and the firm% sum is equal to 100, but the record is repeating twice , under the same CONTRACTNUM......................any suggestions willbe of great help.
    So for this i used the ROW_NUMBER() OVER(ORDER BY date_field DESC)
    in my case : ROW_NUMBER() OVER(ORDER BY ntp_actual DESC).
    Now it gives me a new field with the row_numbers and when i create a condition where the calculation is =1, it give me one record
    I was using this , because for any given contract number .............it should bring the record with the recent ntp_actual date.
    i hope i was clear.
    Thnks

  • TS3899 iOS 7: sort email by most recent date?  Beyond frustrating.

    iOS 7: sort email by most recent date?  Beyond frustrating.

    Agree. Mail search results are nearly useless, sorted in effectively random order. Major Apple FAIL.
    Removing the other search buttons (from, subject, etc.) is also frustrating. Went from one-click simplicity to having to type in 'from:'.  Serious inconvenience.  Completely failed the WWSS (What would Steve Say?) test.

  • Look for 'Purchase Order' and 'Due date' Tables

    Hi Everyone,
    iam creating a Form for an automatic payment and i have some difficulties to find the table of these fields :
    - Purchase Order (EBELN)
    - Due date (NETDT)
    Please can u help me?
    Regards.

    I hope you checked these tables.
    I found these on Where-used for your NETDT field, Alos these tables have field BELNR which might intrests you.
      Table Fields                     Short descriptn
      BWPOS                            Valuations for Open Items
      FAEDT                            Due Date for Net Payment
      DKKOP                            Balance Audit Trail
      NETDT                            Due Date for Net Payment
      DKOKP                            Open Item Account Balance Audit Trail
      NETDT                            Due Date for Net Payment
      DSKOP                            Balance Audit Trail
      NETDT                            Due Date for Net Payment
      MHND                             Dunning Data
      FAEDT                            Due Date for Net Payment
    good luck,
    ags.

  • What's the purchase order agreement master data table name?

    hi experts
    what's the the purchase order agreement master data table name? and by the way tell me some relative table about agreement.
    thanks a lot and hunger for ur advice.

    Hi,
    EKKO is the purchase order master table. EKPO is the item table. EKBE is purchase order history table. EBAN is purchase requisition table. EBKN is purchase requisition account assignment table.
    Reward.

  • How to display maximum (most recent) date value in a query

    hello,
    I have the following query:
    StudentNumber | ExternalOrganization | Date |         | NumbeOfAdmissions
    0112                  050                            06/27/2007   1
    0234                  060                            07/15/2008   1
    1356                  025                            01/08/2008   1
    My dilemma is how to display only the row that has the most recent Date, e.g. here I want to only see the row with student number 0234 and date 07/15/2008; everything else should be hidden.
    I know it should be very simple....yes/no?
    thanks

    Hi
    even I am facing the same problem..
    Can you please tell me what did you do to get most recent record..
    Even I have made my date field as KF.. n have put condition on it.. but not getting desired result.. may be I am missing something.. somewhere..
    I resolved it.. thanks
    Regards
    Swati
    Edited by: Swati on Feb 17, 2009 7:49 AM

  • Most recent date with two other conditions met

    Ok, so I'm sure somebody is going to suggest that I do a search first before posting on here.  So let me assure you, that I have exhausted all search possibilities that I could possibly think of before registering to post on here.  I've read a lot of good suggestions that got me just as far as I was getting on my own, because I couldn't find any posts of somebody asking exactly what I'm looking to do.  I have tried quite close to 100 different formulas without achieving the desired results.
    I'm a pilot, and I track all of my flights myself in a very well organized(I think so ) Numbers spreadsheet that I've been tweaking and perfecting over the past few years.  I have created plenty of formulas in it, and they all work great...except ONE.
    I've created a simplified version of the columns I am trying to match specific conditions with.  Essentially, I need the formula to return the most recent date(column 1), that is completed during a night time flight status(column 2), that is equal to or greater than 1.0 flight hours(column 3).
    As you can see, by evaluating the table below, the correct formula should return to me:        8-4-13
    The closest I've come to getting the correct results was with a "LOOKUP" formula, but I could not figure out how to get it to properly assess whether it was equal to or greater than 1.0 hours of flight, thus returning me the wrong date EVERYTIME(the most recent night flight period).
    I'm sure I've gotten close at least a few times, but I need some help getting this final formula figured out.  I really appreciate anybody's input on this.
    Date
    Flight Status
    Flight Hours
    8-1-13
    D
    2.4
    8-2-13
    N
    3.0
    8-3-13
    N
    1.1
    8-4-13
    N
    1.3
    8-5-13
    D
    2.2
    8-6-13
    N
    0.5
    8-7-13
    D
    1.1

    This may work and requires and extra column in your Data entry table (the one you provided in your post).  You can hide this new column.
    D2=IF(AND(C2>=1, B2="N"), A2, "")
    select D2 and fill down as needed.
    The table on the right is a summary table and is set up as follows:
    B2=MAX(Data :: D)
    I hope this is helpful

  • Most recent date (UDATE) from CDHDR table based on CDPOS

    Hi,
    I am working on one object where i stuck with one issue. The requirement is I have to retrieve the most recent date from CDHDR table based on CHANGENR in CDPOS table. Where i am doing FOR ALL ENTRIES on CDPOS table to get the MAX( date )and i got the error, that aggregate functions are not allowed except COUNT( * ) with for all entries.
    Any thread which can solve this issue would help aswel.
    Please guide me how to achieve this. <removed>
    Edited by: Thomas Zloch on Mar 13, 2010 9:10 PM

    Hi Li,
    Thats was really helpful information , infact my requirement is same as what you said. I even checked in the table entries there is only one changenumber.
    You said we can take the first record, i even did the same. But for TABNAME I have to pass 3 table name 'LFA1', 'LFB1' and 'LFM1'. For FNAME 'LOEVM', 'SPERR'. I have written the code as below.
      SELECT objectclas
                   objectid
                   changenr
                   FROM cdpos
                   INTO TABLE i_cdpos_a1
                   FOR ALL ENTRIES IN i_lfabm1
                   WHERE objectclas = c_kred               "KRED
                   AND objectid EQ i_lfabm1-objectid       "Lifnr
                   AND ( tabname EQ c_lfa1 OR tabname EQ c_lfb1 OR tabname EQ c_lfm1 )          "LFA1, LFB1 and LFM1
                   AND ( fname EQ c_loevm OR fname OR fname EQ c_sperr )    "LOEVM, SPERR
                   AND value_new EQ c_x.
            IF sy-subrc EQ c_0.
              IF i_cdpos_a1[] IS NOT INITIAL.
    Select UDATE from CDHDR based on CHANGENR in CDPOS.
                SELECT objectclas
                       objectid
                       changenr
                       udate
                       FROM cdhdr
                       INTO TABLE i_cdhdr_a1
                       FOR ALL ENTRIES IN i_cdpos_a1
                       WHERE objectclas = c_kred             "KRED
                       AND  objectid EQ i_lfabm1-objectid               "Lifnr
                       AND changenr EQ i_cdpos_a1-changenr.   "(this is coming from CDPOS above selection)
    Here i got UDATE which have all the dates from 3 tables. I have to display in the output the field value (X) of LOEVM and UDATE for LFA1, SPERR value and UDATE for LFA1.Same way for other two tables, I have to display the UDATE and its field value (X). Where UDATE should be most recent date respectively.
    How can I populate the Recent date (UDATE) from one interal table for indvidual field values and table names.

  • Most recent date query..

    Hi All..
    I have 2 tables note and sub_note and sample data is..
    create table note(note_date date,pmry_id number,sub_id number not null)
    insert into note(note_date,pmry_id,sub_id) values('12/30/2008 02:12:52',282,1)
    insert into note(note_date,pmry_id,sub_id) values('12/23/2008 10:12:24',282,1)
    insert into note(note_date,pmry_id,sub_id) values('12/22/2008 01:12:11',282,1)
    insert into note(note_date,pmry_id,sub_id) values('12/22/2008 09:12:56',282,1)
    insert into note(note_date,pmry_id,sub_id) values('12/19/2008 01:12:54',282,1)
    insert into note(note_date,pmry_id,sub_id) values('12/22/2008 09:12:56',282,2)
    insert into note(note_date,pmry_id,sub_id) values('12/22/2008 09:12:57',282,2)
    create table sub_note(sub_id number not null,sub_name varchar2(100))
    insert into sub_note(sub_id,sub_name) values(1,'Product')
    insert into sub_note(sub_id,sub_name) values(2,'Expectations')how can select the most recent date for product and most recent date for expectations...joining these 2 tables..
    Thanks in advance...

    user10280715 wrote:
    Thanks for the reply...
    that was only a sample data..so I kept 2 sub_names for a perticular pmry_id..my original data contains several sub_names(about 5) for a perticular pmry_id...
    hope you gt my point..I'm not sure I understand.
    If you have 5 sub_names that you're interested in, change the WHERE clause to have those 5 sub_names. The list after "IN" can have as few as 1 or as many as 1000 items. (I'm not too sure about the upper limit, and it may be version-dependent.)
    If you want to include all sub_names, then omit the WHERE clause.

  • Selecting row by most recent date

    I'm attempting to select a row where the time ends in :00 and
    date is the most recent date or just the last record where time
    ends in :00, either will do.
    Once I have that record selected I need to query that query
    to pull in the previous 3 records which will be times ending in
    :15, :30 and :45 to round out that full hour of data for
    processing.
    It seems to me that this should be pretty easy but my CF
    books are not helping me here.
    Any Ideas?

    Two things I do to make this sort of thing easier are:
    1. Take baby steps. Start with one field and the date field.
    Once you get that to work, add one or two fields at at time.
    2. Comma control. This structure helps prevent extra commas
    from slipping into your query.
    select field1
    , field2
    , date
    from yourtable join (
    select field1 f1
    , field2 f2
    , max(datefield) maxdate)
    from yourtable
    where something
    group by field1
    , field2
    ) temp on field1 = f1 etc
    where clause

  • Most recent data first in table view

     I am adding values to a display table like in the example, but I want the top row to be the newest data for the user to see. 
    It keeps adding to the bottom, and then the user would have to scrolll down to see all the data.      Can I select somehow the most recent data or get the table to auto scroll as data is applied?     I have tried shift registers as well but no luck.        
    Here is my VI
    Thanks
    Mike
    Solved!
    Go to Solution.
    Attachments:
    BasicTableExample.vi ‏11 KB

    Be aware that if you populate the table with a lot of data, its performance will get very slow.  You can work around this issue by only writing data to the table which the table is actually displaying.  To do this, you will need to use a scroll bar separate from the main table and the event structure to capture events.  If you run into this issue, let us know so we can provide some sample code.
    This account is no longer active. Contact ShadesOfGray for current posts and information.

  • How to display record with most recent date in sapui5?

    Hi
    I have a local json data with me, in which I have number of records.
    And in each record I have an "AENDATE" as a date property.
    Now I want to display the record with most recent date in the records.
    How I can I do it......????????
    Please help me with this.
    Thanks
    Sathish

    How about sorting your json model descending, and display only first (index:0) item?

Maybe you are looking for

  • Datatype of columns in a table

    How do I get the data type of a column without using data dictionary? Is there any generic construct to find the datatype which will work for SQL Server and Oracle?

  • HPC ClusterTools 8.2.1

    Hello, I am very new to Solaris, in fact I am on day 2. I do have some previous experience with Linux, so not everything is foreign to me. I am in the process of setting up a SunFire X2270 cluster and am having difficulty getting ClusterTools to run,

  • I'm unable to set a custom footer in print setup of "Page 2-#" so I would get 2-1, 2-2, etc.

    I have tried "Page 2- #" (note the space) as well. This doesn't work in FF4 either.

  • Inputting multiple arguments into a method

    Hi, I have somewhat of a problem. I'm trying to create a method, stringQuery, and I do not know how many arguments the method will take. Allow me to explain my goal, so you can have some idea of what I'm talking about. I want to create a method that

  • Cannot compress files or folders

    On a MB Pro with Leopard 10.5.8 I cannot compress files: either the command "compress" (or similiar, I don't use a english OS) in the menu is grey or the command does not show up in the context menu. On another MB Pro also with 10.5.8 this works as e