Skip to Content
Odoo Menu
  • Zaloguj się
  • Wypróbuj za darmo
  • Aplikacje
    Finanse
    • Księgowość
    • Fakturowanie
    • Wydatki
    • Arkusz kalkulacyjny (BI)
    • Dokumenty
    • Podpisy
    Sprzedaż
    • CRM
    • Sprzedaż
    • PoS Sklep
    • PoS Restauracja
    • Subskrypcje
    • Wypożyczalnia
    Strony Internetowe
    • Kreator Stron Internetowych
    • eCommerce
    • Blog
    • Forum
    • Czat na Żywo
    • eLearning
    Łańcuch dostaw
    • Magazyn
    • Produkcja
    • PLM
    • Zakupy
    • Konserwacja
    • Jakość
    Zasoby Ludzkie
    • Pracownicy
    • Rekrutacja
    • Urlopy
    • Ocena pracy
    • Polecenia Pracownicze
    • Flota
    Marketing
    • Marketing Społecznościowy
    • E-mail Marketing
    • SMS Marketing
    • Wydarzenia
    • Automatyzacja Marketingu
    • Ankiety
    Usługi
    • Projekt
    • Ewidencja czasu pracy
    • Usługi Terenowe
    • Helpdesk
    • Planowanie
    • Spotkania
    Produktywność
    • Dyskusje
    • Zatwierdzenia
    • IoT
    • VoIP
    • Baza wiedzy
    • WhatsApp
    Aplikacje trzecich stron Studio Odoo Odoo Cloud Platform
  • Branże
    Sprzedaż detaliczna
    • Księgarnia
    • Sklep odzieżowy
    • Sklep meblowy
    • Sklep spożywczy
    • Sklep z narzędziami
    • Sklep z zabawkami
    Żywienie i hotelarstwo
    • Bar i Pub
    • Restauracja
    • Fast Food
    • Pensjonat
    • Dystrybutor napojów
    • Hotel
    Agencja nieruchomości
    • Agencja nieruchomości
    • Biuro architektoniczne
    • Budowa
    • Zarządzanie nieruchomościami
    • Ogrodnictwo
    • Stowarzyszenie właścicieli nieruchomości
    Doradztwo
    • Biuro księgowe
    • Partner Odoo
    • Agencja marketingowa
    • Kancelaria prawna
    • Agencja rekrutacyjna
    • Audyt i certyfikacja
    Produkcja
    • Tekstylia
    • Metal
    • Meble
    • Jedzenie
    • Browar
    • Prezenty firmowe
    Zdrowie & Fitness
    • Klub sportowy
    • Salon optyczny
    • Centrum fitness
    • Praktycy Wellness
    • Apteka
    • Salon fryzjerski
    Transakcje
    • Złota rączka
    • Wsparcie Sprzętu IT
    • Systemy energii słonecznej
    • Szewc
    • Firma sprzątająca
    • Usługi HVAC
    Inne
    • Organizacja non-profit
    • Agencja Środowiskowa
    • Wynajem billboardów
    • Fotografia
    • Leasing rowerów
    • Sprzedawca oprogramowania
    Przeglądaj wszystkie branże
  • Community
    Ucz się
    • Samouczki
    • Dokumentacja
    • Certyfikacje
    • Szkolenie
    • Blog
    • Podcast
    Pomóż w nauce innym
    • Program Edukacyjny
    • Scale Up! Gra biznesowa
    • Odwiedź Odoo
    Skorzystaj z oprogramowania
    • Pobierz
    • Porównaj edycje
    • Wydania
    Współpracuj
    • Github
    • Forum
    • Wydarzenia
    • Tłumaczenia
    • Zostań partnerem
    • Usługi dla partnerów
    • Zarejestruj swoją firmę rachunkową
    Skorzystaj z usług
    • Znajdź partnera
    • Znajdź księgowego
    • Spotkaj się z doradcą
    • Usługi wdrożenia
    • Opinie klientów
    • Wsparcie
    • Aktualizacje
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Zaplanuj demo
  • Cennik
  • Pomoc

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • Księgowość
  • Zapasy
  • PoS
  • Projekt
  • MRP
All apps
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
Wszystkie posty Osoby Odznaki
Tagi (Zobacz wszystko)
odoo accounting v14 pos v15
O tym forum
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
Wszystkie posty Osoby Odznaki
Tagi (Zobacz wszystko)
odoo accounting v14 pos v15
O tym forum
Pomoc

How To Calculate Age From Birthday

Zaprenumeruj

Otrzymaj powiadomienie o aktywności w tym poście

To pytanie dostało ostrzeżenie
functionodooodoo10.0
7 Odpowiedzi
29533 Widoki
Awatar
Dishan Madushanka

Hi,

     I need to know that how to calculate age from birthday in odoo10.

0
Awatar
Odrzuć
Awatar
Niyas Raphy (Walnut Software Solutions)
Najlepsza odpowiedź

Hi,

A lot of solutions in already available for this. Also some apps is available for this. I will just copy paste one of the solution from it,

from datetime import date

def calculate_age(born):
    today = date.today()
    return today.year - born.year - ((today.month, today.day) < (born.month, born.day))

More solutions :-

https://www.odoo.com/forum/help-1/question/how-to-calculate-age-from-date-of-birth-22946

https://stackoverflow.com/questions/2217488/age-from-birthdate-in-python 

Apps available :-

https://apps.odoo.com/apps/modules/9.0/birth_date_age/

https://apps.odoo.com/apps/modules/10.0/birthday_age_calculator/ 

Thanks

2
Awatar
Odrzuć
Awatar
iWesabe Technologies
Najlepsza odpowiedź


This is also possible


@api.multi
@api.depends('birthday')
def _compute_age(self):
    for record in self:
        if record.birthday and record.birthday <= fields.Date.today():
            record.age = relativedelta(
                fields.Date.from_string(fields.Date.today()),
                fields.Date.from_string(record.birthday)).years
        else:
            record.age = 0

Thanks.

 iWesabe

1
Awatar
Odrzuć
Awatar
omar bajunaid
Najlepsza odpowiedź
#use relativedelta to calculate age in years , months and days
from odoo import api, fields, models
from datetime import date, datetime
from dateutil.relativedelta import relativedelta
@api.depends('dob')
@api.multi
def _cal_age(self):

if self.dob:
years = relativedelta(date.today(), self.dob).years
months = relativedelta(date.today(), self.dob).months
day = relativedelta(date.today(), self.dob).days

self.age = str(int(years)) + ' Year/s ' + str(int(months)) + ' Month/s ' + str(day) + ' Day/s'
1
Awatar
Odrzuć
Awatar
Francis Louie Del Rosario
Najlepsza odpowiedź

Hi


@api.depends('birthday')
def _get_age(self):
for r in self:
if r.birthday:
bdate = datetime.strptime(r.birthday, "%Y-%m-%d").date()
today = date.today()
diffdate = today - bdate

years = diffdate.days/365
formonth = diffdate.days - (years * 365.25)
months = (formonth/31)
bday = bdate.day
tody = date.today().day
if tody >= bday:
day = tody-bday
else:
day = 31 - (bday-tody)

r.age = str(years) + ' Year/s ' + str(int(months)) + ' Month/s ' + str(day) + ' Day/s'
 

age = fields.Char(compute='get_age', string = 'Age')
hope this helps

0
Awatar
Odrzuć
Awatar
Adesh Paul
Najlepsza odpowiedź
class StudentStudent(models.Model):
_name = 'student.student'

    calc_age = fields.Char(string="Calculated Age", compute="age_calc", store=True)

    # Calculated age
    @api.depends('student_dob')
    def age_calc(self):
    if self.student_dob is not False:
            self.calc_age = (datetime.today().date() -             datetime.strptime(str(self.student_dob), '%Y-%m-%d').date()) //              timedelta(days=365)
0
Awatar
Odrzuć
Awatar
Dishan Madushanka
Autor Najlepsza odpowiedź

Thank You Niyas,

I'm already done like this way ,it's worked.

class BirthDateAge(models.Model):

    _inherit = "hr.employee"

    birthday = fields.Date(string="DOB")

    age = fields.Integer(string="Age")

    @api.onchange('birthday')

    def _onchange_birth_date(self):

        """Updates age field when birth_date is changed"""

        if self.birthday:

            d1 = datetime.strptime(self.birthday, "%Y-%m-%d").date()

            d2 = date.today()

            self.age = relativedelta(d2, d1).years

-1
Awatar
Odrzuć
Madara

hi , i tried this but iam getting this below error

Error:

Odoo Server Error

Traceback (most recent call last):

File "/odoo/odoo-server/odoo/http.py", line 619, in _handle_exception

return super(JsonRequest, self)._handle_exception(exception)

File "/odoo/odoo-server/odoo/http.py", line 309, in _handle_exception

raise pycompat.reraise(type(exception), exception, sys.exc_info()[2])

File "/odoo/odoo-server/odoo/tools/pycompat.py", line 14, in reraise

raise value

File "/odoo/odoo-server/odoo/http.py", line 664, in dispatch

result = self._call_function(**self.params)

File "/odoo/odoo-server/odoo/http.py", line 345, in _call_function

return checked_call(self.db, *args, **kwargs)

File "/odoo/odoo-server/odoo/service/model.py", line 93, in wrapper

return f(dbname, *args, **kwargs)

File "/odoo/odoo-server/odoo/http.py", line 338, in checked_call

result = self.endpoint(*a, **kw)

File "/odoo/odoo-server/odoo/http.py", line 910, in __call__

return self.method(*args, **kw)

File "/odoo/odoo-server/odoo/http.py", line 510, in response_wrap

response = f(*args, **kw)

File "/odoo/odoo-server/addons/web/controllers/main.py", line 1320, in call_kw

return self._call_kw(model, method, args, kwargs)

File "/odoo/odoo-server/addons/web/controllers/main.py", line 1312, in _call_kw

return call_kw(request.env[model], method, args, kwargs)

File "/odoo/odoo-server/odoo/api.py", line 387, in call_kw

result = _call_kw_multi(method, model, args, kwargs)

File "/odoo/odoo-server/odoo/api.py", line 374, in _call_kw_multi

result = method(recs, *args, **kwargs)

File "/odoo/odoo-server/odoo/models.py", line 6070, in onchange

record._onchange_eval(name, field_onchange[name], result)

File "/odoo/odoo-server/odoo/models.py", line 5871, in _onchange_eval

method_res = method(self)

File "/odoo/odoo-server/addons/hr/models/hr_employee.py", line 87, in _onchange_birth_date

('married', 'Married'),

TypeError: strptime() argument 1 must be str, not datetime.date

Podoba Ci się ta dyskusja? Dołącz do niej!

Stwórz konto dzisiaj, aby cieszyć się ekskluzywnymi funkcjami i wchodzić w interakcje z naszą wspaniałą społecznością!

Zarejestruj się
Powiązane posty Odpowiedzi Widoki Czynność
cant call this func odoo, error :TypeError: update_groups() missing 1 required positional argument: 'uids'.
function odoo
Awatar
Awatar
2
kwi 21
5856
[Odoo 10] stock available in excel sale report
odoo odoo10.0
Awatar
0
lis 20
2975
Odoo 10 | How to Override JavaScript function Rozwiązane
odoo odoo10.0
Awatar
Awatar
1
sie 18
13342
Odoo 10 | How to create a dashboard in odoo 10 Rozwiązane
odoo odoo10.0
Awatar
Awatar
1
sie 18
10419
Call a function through Url Rozwiązane
function api url odoo odoo10.0
Awatar
Awatar
1
sty 18
7856
Społeczność
  • Samouczki
  • Dokumentacja
  • Forum
Open Source
  • Pobierz
  • Github
  • Runbot
  • Tłumaczenia
Usługi
  • Hosting Odoo.sh
  • Wsparcie
  • Aktualizacja
  • Indywidualne rozwiązania
  • Edukacja
  • Znajdź księgowego
  • Znajdź partnera
  • Zostań partnerem
O nas
  • Nasza firma
  • Zasoby marki
  • Skontaktuj się z nami
  • Oferty pracy
  • Wydarzenia
  • Podcast
  • Blog
  • Klienci
  • Informacje prawne • Prywatność
  • Bezpieczeństwo Odoo
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo to pakiet aplikacji biznesowych typu open source, które zaspokoją wszystkie potrzeby Twojej firmy: CRM, eCommerce, księgowość, inwentaryzacja, punkt sprzedaży, zarządzanie projektami itp.

Unikalną wartością Odoo jest to, że jest jednocześnie bardzo łatwe w użyciu i w pełni zintegrowane.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now