Calculate the age (months and years) of two dates

Trying to get the (almost exact) age in years and months to fill in 'Age at the time of retirement' (years1) since the date of birth (DOB1) and the date of their departure in retirement (retireDate1). The only examples that I could find are dates "today." If anyone can help with code? And I understand it works better with JavaScript but FormCalc would also work?

Dates as DD/MM/YYYY

Field is num {z9}

Thank you in advance for your help!

I could do this work with Age1 as a text field. Of course, you can do whatever you want with it, but this method makes the most sense for me because I can say 99 months "99 years". If you need to separate the year and month in different areas, you should be able to do it easily. Finally, it requires that the user does not manually enter dates. (Something on the raw values isn't quite right when they came from the selection.)

Age1::calculate (or anywhere where you want this event)

if (!DOB1.isNull && !retireDate1.isNull){
  var d1 = DOB1.rawValue.split('-');
  var d2 = retireDate1.rawValue.split('-');
  var years = parseInt(d2[0]) - parseInt(d1[0]);
  var months = (parseInt(d2[1]) - parseInt(d1[1]));
  if (parseInt(months) < 0){
    months = 12 + months;
    years--;
  }
  Age1.rawValue = years + " years " + months + " months.";
}

Tags: Adobe LiveCycle

Similar Questions

  • I want to collect rain for the day, month and year; Can what formula I use?

    I want to collect rain for the day, month and year; What formula or expression that I can use.

    I use a Rain Wise product that converts impulses to an analog value.  The rain wise device can be

    "the value measure up to 1", 5", or 10".  I will be setting the unit at 10 inches in increments of 0.01 inch.

    What I would do is at each time increments of signal I would consider it as 0.01 then after reaching

    a period of time a day or a month, back to zero.

    Need some advice on this problem.

    How about you, using a counter to count the number of times where the signal is less than 0.01?

    For example,.

    Counter.Count = signal<=>

    The total number of rain is

    Counter * 10 + signal

    Use TimeOfDay or TimeOfWeek to reset the counter.

  • How to get the previous month and year accordingly

    Hi friends,
    I wanted to select the month as a number like 4 and the new year 2011
    but I want to choose the previous month from sysdate
    as if the sysdate is June 10, 2011
    It should give me 5 months and
    in the year, it should give as 2011
    If the sysdate is January 1, 2012
    the month should be like 12 and year should be in 2011

    Thank you

    Hello

    776317 wrote:
    Thank you very much I just the 0 being the prefix... can you pls how to avoid that too well pls

    TO_CHAR ( ADD_MONTHS (SYSDATE, -1)
            , 'FMmm yyyy'
           )
    

    For more information on the FM, wee manual SQL language modifier works:
    http://download.Oracle.com/docs/CD/B28359_01/server.111/b28286/sql_elements004.htm#sthref456

  • split with day, month and year in a date

    Hi all

    I have this point of view

    with (id, dt) t (select 1, to_date('02/06/2010','MM/DD/YYYY') of all the double union)
    Select 2, to_date('11/29/2001','MM/DD/YYYY') of all the double union
    Select 3, to_date('02/06/2011','MM/DD/YYYY') of all the double union
    Select option 4, double to_date('10/10/2011','MM/DD/YYYY')
    )
    --
    -end of test data
    --
    SELECT id, dt
    floor (months_between(sysdate,dt)/12) years
    , floor (mod (months_between (sysdate, dt), 12)) months
    -The day is ambiguous because of the number of days in a different month
    -you could design your own algorithm to give the desired results, but it is a good approximation
    , floor (sysdate-(add_months (dt, floor (months_between (sysdate, dt))) as dys
    t
    /
    ID DT YEARS MONTHS DYS
    ---------- ----------- ---------- ---------- ----------
    1-6 FEBRUARY 2010 5 8 22
    2 29 NOVEMBER 2001 13 10 29
    3-6 FEBRUARY 2011 4 8 22
    4-10 OCTOBER 2011 4 0 18

    As a result, 26 years old, 26 months, 91 days.


    And subtract years, MONTHS and DYS as format

    erase years, from 1 to 12 months and the days of the 1 to 30 as

    91 days = 30 x 3 + 1 = > 1 day over 3 months

    26 months + 3 months = 29 months = > 24 months + 5 months = 2 years + 5 months

    and 26 years + 2 years = 28

    desire to result: 28 years, 5 months and 1 day.

    Is there a function that give me this result from the query above?

    Kind regards

    Gordan

    Hello Gordan,.

    I understand that you are the SUM of all the lines.

    Here are two ideas:

    -1 - using a date
    (a) SUM (TRUNC (sysdate) - dt)
    I would give you the total number of days.
    (b) adding the number of days to, for example, DATE ' 1900-01-01' would give another date...
    (c) simply subtract the years 1900 and it takes several years,
    subtract 1 from the month (1-12 from January to December) and you have the number of months
    subtract 1 from the day of the month (1-31) and you have the number of days.
    It is of course 'approximate' as the months do not have the same number of days...

    -2 - using only the number of days
    Maybe you want something else, for example: the total number of days divided by 365.25 for many years, the recall divided by 30 to get the number of months, the reminder being the number of days.

    (a) SUM (TRUNC (sysdate) - dt)

    I would give you the total number of days.

    (b) Division by 365.25 (le.25 is to take leap years into account, but you can choose for example "365")

    (c) number of reminder of days (total - years * 365.25): divided by 30 is the number of months

    (d) number reminder of days (total - years * 365.25 - months * 30): gives the number of days.

    The following two options with your test data (by chance, this gives the same result in this case)

    option 1:
    with (id, dt) t (select 1, to_date('02/06/2010','MM/DD/YYYY') of all the double union)
    Select 2, to_date('11/29/2001','MM/DD/YYYY') of all the double union
    Select 3, to_date('02/06/2011','MM/DD/YYYY') of all the double union
    Select option 4, double to_date('10/10/2011','MM/DD/YYYY')
    )
    target_date AS
    (SELECT DATE ' 1900-01-01' + SUM (TRUNC (sysdate) - t.dt) FROM t trgt)
    in_pieces AS
    (SELECT TO_NUMBER (TO_CHAR (td.trgt, 'YYYY')) - 1900 y
    , TO_NUMBER (TO_CHAR (td.trgt, 'MM')) - 1 m
    , TO_NUMBER (TO_CHAR (td.trgt, 'DD')) - 1 d
    Target_date TD
    )
    SELECT "result: ' |"
    TRIM (CASE WHEN ip.y = 0 THEN NULL
    WHEN ip.y = 1 THEN "1 year"
    Of OTHER TO_CHAR (ip.y) | "years".
    END |
    CASE WHEN ip.m = 0 THEN NULL
    WHEN ip.m = 1 THEN "1 month"
    Of OTHER TO_CHAR (ip.m) | 'months '.
    END |
    CASE WHEN ip.d = 0 THEN NULL
    WHEN ip.d = 1 THEN "1 day"
    Of OTHER TO_CHAR (ip.d) | 'days '.
    END
    )
    Of in_pieces ip
    ;
    result: 28 years, 4 months and 28 days

    option 2:

    with (id, dt) t (select 1, to_date('02/06/2010','MM/DD/YYYY') of all the double union)
    Select 2, to_date('11/29/2001','MM/DD/YYYY') of all the double union
    Select 3, to_date('02/06/2011','MM/DD/YYYY') of all the double union
    Select option 4, double to_date('10/10/2011','MM/DD/YYYY')
    )
    nb_days AS
    (SELECT SUM (TRUNC (sysdate) - t.dt) n t)
    , y AS
    (SELECT Nb.n, FLOOR (nb.n / 365.25) y nb_days n. b.)
    ym AS
    (SELECT y.n, y.y, FLOOR ((y.n-y.y * 365,25) / 30) FROM a)
    ymd AS
    (SELECT ym.y, ym.m, ym.n - ym.y * 365.25 - ym.m * ym FROM 30 d)
    SELECT "result: ' |"
    TRIM (CASE WHEN ymd.y = 0 THEN NULL
    WHEN ymd.y = 1 THEN "1 year"
    Of OTHER TO_CHAR (ymd.y) | "years".
    END |
    CASE WHEN ymd.m = 0 THEN NULL
    WHEN ymd.m = 1 THEN "1 month"
    Of OTHER TO_CHAR (ymd.m) | 'months '.
    END |
    CASE WHEN ymd.d = 0 THEN NULL
    WHEN ymd.d = 1 THEN "1 day"
    Of OTHER TO_CHAR (ymd.d) | 'days '.
    END
    )
    WAN
    ;
    result: 28 years, 4 months and 28 days

    Best regards

    Bruno Vroman.

  • How to find the sum of the month and year of a date

    Hi all

    I want to find the sum of the date
    for example, 10 November 2010 I need to find (11-2010).

    Please help me

    You can use the extract function...

    SQL> select extract(month from systimestamp)+extract(year from systimestamp) from dual;
                EXTRACT(MONTHFROMSYSTIMESTAMP)+EXTRACT(YEARFROMSYSTIMESTAMP)
                                        ------------------------------------------------------------
                                                            2021
    

    Concerning
    Renjith Malet

  • I have problems with D4.1 in Labview ' 09. It is said to determine the age of a person in years, when given the month in course, day, and year and month of birth of the person, day, and year

    Seen someone's birth month day and year... and also the day of the current month and year like entries... calculate their age, years... as output... age should not increment by one until the arrival of their birthday this year.   I can't get the coding right... Please help


  • Get the number of days in a month based on the month and year of fields

    I have a column in my form which lists the days in a month. I want to configure a hidden field that calculates the total number of days in a month, based on the month and year of the field inputs. The number of days will determine what appears on the column. For example, if I put 4 months, and 2016 in the field of the year, I get 30 in the hidden field. Thus, on the column 'Day', I'll have numbers 1-30. Or if I put 2 months and 2016 in the field of the year, I get the 29 in the hidden field. If the numbers 1-29 appears in the column 'day '.

    Found this on some forum javascript code:

    //Month is 1 based
    function daysInMonth(month,year) {
      
    return new Date(year, month, 0).getDate();
    }

    //July
    daysInMonth
    (7,2009); //31
    //February
    daysInMonth
    (2,2009); //28
    daysInMonth
    (2,2008); //29

    I do not know how to convert this code in JavaScript to adobe and don't really know how to use it. All I know how to do is to configure the field values for the field month and year as variables. I am a novice programmer and would appreciate it really all the help I can get. Thank you in advance!

    The code seems to be JavaScript and runs as needed by using the JavaScript console.

    I would like to consider making more general code, so if you have a date string that includes at least the month and year we could just call the function and get the number of days for that month.

    The following script will calculate the number of days in a month, by using at least the month and year values can display the result on the JavaScript console and all of the value field for the field that has this code as the custom calculation Script.

    function daysInMonth (oDate) {}
    return new Date (oDate.getFullYear (), oDate.getMonth () + 1, 0) .getDate ();
    }

    nMonth var = this.getField("Month").valueAsString; get the value of month;
    nYear var = this.getField("Year").valueAsString; get the value of the year;

    Event.Value = "";

    If (nMonth! = "" & nYear!) = "") {}
    var MyDate = util.scand ("' / mm/yyyy ', nMonth +" / "+ nYear); convert to date object;
    var nDaysInMonth = daysInMonth (MyDate); get the number of days;

    Console.Open (); Open the JavaScript console;

    Console.clear(); clear the console;

    Console.println ("Days in" + nMonth + ":" + nDaysInMonth); show days in month;

    Event.Value = nDaysInMonth; Set the value of the field;

    }

  • get the month and year of date type

    Hi all
    I need to get the month and year of type date.

    For example
    select to_date('2011-01-17', 'yyyy-mm-dd') from dual;
    Required result:
    01-2011
    Any ideas?

    Thanks in advance,
    Bahchevanov.
    select to_char(to_date('2011-01-17', 'yyyy-mm-dd'),'mm-yyyy') from dual;
    

    HTH

  • to get the month and year separated

    Hello

    I have the entry_date_fin of column (type of data-varchar2 (8))

    with values like Apr.-2008
    Feb-2009 etc.

    can I get the distinct month and year separated
    i tried select to_date(entry_date_fin,'MM') FROM  xyz  doesnt wrk
    kindly guide me

    Although you are (wrongly, IMO) storage of dates as strings, just use string manipulation...

    SQL> with t as (select 'FEB-2008' as txt from dual)
      2  --
      3  select substr(txt,1,3) as mnth
      4        ,substr(txt,5) as yr
      5  from t
      6  /
    
    MNT YR
    --- ----
    FEB 2008
    
    SQL>
    
  • Calculate the (age) years between two dates

    Nice day!

    I have not been able to find an answer, that I was able to use in the archives or online and would be very grateful for the help.  I'm working with Adobe Acrobat Pro XI (not LiveCycle) and I have very little experience with programming (for the most part, copy / paste).

    I need to create a text box that calculates the number of years between two dates entered, i.e. the age when the date of birth and death are given.  Also, would be nice if she was a Virgin until the two were provided.  Anyone would be able to give me the code I need to put in the custom calculation script?

    Once again, any help would be much appreciated!  Thank you and have a wonderful day!

    For the fields for Date of birth DOB and DOD for the Date of death and age in complete years both by using a'd-mmm-yyyy' date format you can use a custom calculation to the JavaScript for the field of age as:

    function GetField (cName) {}
    get the field with error trapping object;
    oField var = this.getField (cName);
    test error;
    if(oField == null) app.alert ("error during the" + cName, 1, 0);
    Returns the field object;
    return oField;
    } / / end GetField function;

    function {Scand (cFormat, cString)
    using date string format convert object date;
    convert string to date using format;
    Kai var = util.scand (cFormat, cString);
    the value null is an error of conversion;
    if(oDate == null) app.alert ("Conversion error" cString "by using the format" + cFormat, 1, 0);
    date of return;
    Return to oDate;
    } / / end Scand function;

    clear the value of the field;

    Event.Value ="";
    get data dob and dod;
    var oDOB = GetField ("DOB");
    Var o = GetField ("DOD");

    treat only if DOB and DOD have value and are not null;
    If (oDOB! = null & o! = null & oDOB.value! = "" & oDOD.value!) = "") {}

    convert the DOB and DOD to date objects.
    oDOB var = util.scand ("d-mmm-yyyy", oDOB.value);
    O var = util.scand ("d-mmm-yyyy", oDOD.value);

    get the difference over the years;
    var Age = oDOD.getFullYear () - oDOB.getFullYear ();

    adjust for month of previous DOD DOB;
    If (oDOD.GetMonth)< odob.getmonth())="">

    adjust the DOD before DOB date in the month of birth;

    If (oDOD.GetMonth () == oDOB.getMonth () & oDOD.getDate ())< odob.getdate())="">
    Set the value of the field;

    Event.Value = Age;
    }

  • problem to insert only month and year instead of the full date

    select b.penjara_id, p.penj_lokasi, a.no_daftar, b.episod, b.nama1,to_char(a.trkh_mula_prl,'dd/mm/yyyy') as trkh_mula_prl, to_char(bulan_proses,'mm/yyyy') as bulan_proses,
            b.epd, b.lpd
    from prl_daftar_proses a, senarai_pesalah b, penjara p
    
    where a.no_daftar=b.no_daftar
    and a.episod=b.episod
    and b.penjara_id = p.penjara_id
    and a.setuju_jplp is null
    and a.bulan_proses between to_date(:FROM,'dd/mm/yyyy') and to_date(:TO,'dd/mm/yyyy')
    
    
    order by b.penjara_id, a.bulan_proses,a.no_daftar
    Hi, can someone help me how I can register only the month and year of the value which have full day in the database?

    for example, the date is 18/09/2012, but I want to just insert 09/2012 as a parameter. If I want to insert only one setting, I can do... But I have problem when I want to insert two parameters...

    Lina saleh wrote:
    I already try before that and he invites me error like this...
    "name of the invalid host/identification variable.

    Change the name of the connection variable to: from_date and: to_date

    Is a reserved keyword.

  • Set the calendar to display day, month and year

    In addition to the time of day, my computer began giving the day of the week (Monday) only instead of day, month and year as it did before. Tried to go back to 29/12/2014 or something similar without success.  Any suggestions?

    Hello

    Sorry for the late reply and I appreciate your patience.

    User profile corruption might have caused the problem. As a solution, I suggest to create a new user profile and check if the date format displays the same thing.

    To do this, see the link below.

    http://Windows.Microsoft.com/en-us/Windows/fix-corrupted-user-profile#1TC=Windows-7.

    It will be useful. Just answer us with the State, and we will be happy to help you.

  • Get the number of days, months and year

    Hi all

    I'm using OBIEE 11 g. I have a line of dash for year (2010, 2011, etc.) and months (Jan, Feb,..., Dec). How can I get the number of days in a given month and year in my report?

    For example, if I choose to Jan & 2011, I'd get 31 and 356. And if I choose Feb & 2011, I would get 28 and 356.

    Thank you!

    I have something more good option here... Try to use this

    DAYOFMONTH (TIMESTAMPADD (SQL_TSI_DAY, DAYOFMONTH (CURRENT_DATE) *-1, TIMESTAMPADD (SQL_TSI_MONTH, 1, CURRENT_DATE)))

    This will give you the days for the month in progress (Oct 2011) after calculating the last day of each month... Similary dynamically pass the value Date or month... You will need to modify this function but shud be simple. Hope this helps :)

  • Calculate the age of a person from today

    I'm writing a query where I'm trying to figure out how old a person is starting today.

    So, I have a database field in my STUDENT_TB (table) where the birth_date is a DATE field. I'm writing a query where I would like to calculate the age of the person.

    So, if a person is 48 years old and 6 months 2 days, I would essentially say the person is 48 years old. Any help is greatly appreciated.

    I tried using MONTHS_BETWEEN but run into some problems. I tried using P_END_DATE - P_START_DATE and then he dive by 365, but which is at the origin of the problems too.

    Thank you!

    Roxyrollers wrote:
    I'm writing a query where I'm trying to figure out how old a person is starting today.

    So, I have a database field in my STUDENT_TB (table) where the birth_date is a DATE field. I'm writing a query where I would like to calculate the age of the person.

    So, if a person is 48 years old and 6 months 2 days, I would essentially say the person is 48 years old. Any help is greatly appreciated.

    I tried using MONTHS_BETWEEN but run into some problems. I tried using P_END_DATE - P_START_DATE and then he dive by 365, but which is at the origin of the problems too.

    Thank you!

    What exactly are the problems you are having?

    select
       floor(months_between(sysdate, to_date('01-jan-1978','dd-mon-yyyy')) / 12) as years_old
    from dual;
    
     YEARS_OLD
    ----------
         32
    
    1 row selected.
    
    TUBBY_TUBBZ?
    
  • Query to calculate the age

    Hello

    Please suggest me to wirte a function that can calculate the age.

    Hello

    No need for a function. But a simple calculation.

    SQL> select round(months_between(sysdate,to_date('11-MAY-1977','dd-MON-YY'))/12) age from dual;
    
           AGE
    ----------
            33
    

    If you take into account the dates stored in an oracle table column can take care of the years
    before and after 1950.
    A thread for your reference: Re: day airthmetic

Maybe you are looking for

  • How can I get rid of unwanted programs?

    I received a notice of Firefox (with the logo of Firefox) than "obsolete browser detected" and a box to click to update my browser. I clicked on the box and ended up with 4 or 5 programs that I didn't have a new area of research, quality Watcher, a s

  • Compaq Presario C700 stops frequently

    I have Compaq Presario C700. There: 1.73 GHz Pentium Dual-Core Mobile Processor T2370, up to 2 GB DDR2, Recently, I noticed that the laptop stops frequently when I'm listening to music, watching movies, or sometimes when you work. I did some research

  • Use Notification mailbox storage

    Is this a scam or true representative of my current situation of storage of mailboxes I need to take action? If the latter how can I ask other storage? I received the email below from Administrator (* E-mail address is removed from the privacy *) You

  • Mode XP error: cannot start Virtual PC Host Process...

    I installed XP Mode, download carefully the x 64 version. But when I try to start it, I get, "Cannot start Windows Virtual PC Host Process".

  • Epson20 printer will not print documents

    Since the update of IE 10 My epson20 printer will not print documents but will post the pictures. What can I do to solve this problem. Concerning Margaret