Zum Inhalt springen
Odoo Menü
  • Anmelden
  • Jetzt gratis testen
  • Apps
    Finanzen
    • Buchhaltung
    • Rechnungsstellung
    • Spesenabrechnung
    • Tabellenkalkulation (BI)
    • Dokumente
    • E-Signatur
    Vertrieb
    • CRM
    • Vertrieb
    • Kassensystem – Shop
    • Kassensystem – Restaurant
    • Abonnements
    • Vermietung
    Websites
    • Website-Builder
    • E-Commerce
    • Blog
    • Forum
    • Livechat
    • E-Learning
    Lieferkette
    • Lager
    • Fertigung
    • PLM
    • Einkauf
    • Wartung
    • Qualität
    Personalwesen
    • Mitarbeiter
    • Personalbeschaffung
    • Abwesenheiten
    • Mitarbeiterbeurteilung
    • Personalempfehlungen
    • Fuhrpark
    Marketing
    • Social Marketing
    • E-Mail-Marketing
    • SMS-Marketing
    • Veranstaltungen
    • Marketing-Automatisierung
    • Umfragen
    Dienstleistungen
    • Projekte
    • Zeiterfassung
    • Außendienst
    • Kundendienst
    • Planung
    • Termine
    Produktivität
    • Dialog
    • Genehmigungen
    • IoT
    • VoIP
    • Wissensdatenbank
    • WhatsApp
    Apps von Drittanbietern Odoo Studio Odoo Cloud-Plattform
  • Branchen
    Einzelhandel
    • Buchladen
    • Kleidergeschäft
    • Möbelhaus
    • Lebensmittelgeschäft
    • Baumarkt
    • Spielwarengeschäft
    Essen & Gastgewerbe
    • Bar und Kneipe
    • Restaurant
    • Fast Food
    • Gästehaus
    • Getränkehändler
    • Hotel
    Immobilien
    • Immobilienagentur
    • Architekturbüro
    • Baugewerbe
    • Immobilienverwaltung
    • Gartenarbeit
    • Eigentümervereinigung
    Beratung
    • Buchhaltungsfirma
    • Odoo-Partner
    • Marketingagentur
    • Anwaltskanzlei
    • Talentakquise
    • Prüfung & Zertifizierung
    Fertigung
    • Textil
    • Metall
    • Möbel
    • Speisen
    • Brauerei
    • Firmengeschenke
    Gesundheit & Fitness
    • Sportklub
    • Brillengeschäft
    • Fitnessstudio
    • Therapeut
    • Apotheke
    • Friseursalon
    Handel
    • Handyman
    • IT-Hardware & -Support
    • Solarenergiesysteme
    • Schuster
    • Reinigungsdienstleistungen
    • HLK-Dienstleistungen
    Sonstiges
    • Gemeinnützige Organisation
    • Umweltschutzagentur
    • Plakatwandvermietung
    • Fotostudio
    • Fahrrad-Leasing
    • Software-Händler
    Alle Branchen ansehen
  • Community
    Lernen
    • Tutorials
    • Dokumentation
    • Zertifizierungen
    • Schulung
    • Blog
    • Podcast
    Bildung fördern
    • Bildungsprogramm
    • Scale-Up! Planspiel
    • Odoo besuchen
    Software anfragen
    • Herunterladen
    • Editionen vergleichen
    • Releases
    Zusammenarbeiten
    • Github
    • Forum
    • Veranstaltungen
    • Übersetzungen
    • Partner werden
    • Dienstleistungen für Partner
    • Buchhaltungsfirma registrieren
    Services anfragen
    • Partner finden
    • Buchhalter finden
    • Einen Experten treffen
    • Implementierungsservices
    • Kundenreferenzen
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Eine Demo erhalten
  • Preiskalkulation
  • Hilfe

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

  • CRM
  • e-Commerce
  • Buchhaltung
  • Lager
  • PoS
  • Projekte
  • MRP
All apps
Sie müssen registriert sein, um mit der Community zu interagieren.
Alle Beiträge Personen Abzeichen
Stichwörter (Alle anzeigen)
odoo accounting v14 pos v15
Über dieses Forum
Sie müssen registriert sein, um mit der Community zu interagieren.
Alle Beiträge Personen Abzeichen
Stichwörter (Alle anzeigen)
odoo accounting v14 pos v15
Über dieses Forum
Hilfe

How to create an auto increment ID Number field in HR Employee?

Abonnieren

Erhalten Sie eine Benachrichtigung, wenn es eine Aktivität zu diesem Beitrag gibt

Diese Frage wurde gekennzeichnet
hremployee
7 Antworten
25971 Ansichten
Avatar
Ken Kasai

How to create an auto increment ID Number field in HR Employee? So that everytime I create an employee, the id number of an employee will automatically increment + 1 in a custom field (readonly). anyone can help? thank you in advance.

0
Avatar
Verwerfen
Sehrish

hope this will helps: https://learnopenerp.blogspot.com/2020/08/generate-create-sequence-number-odoo.html

Avatar
ABU K
Beste Antwort

Hi create a custom module like below code .any issue

hr_custom.py file
==========================================================================================
class hr_employee(osv.osv):
    
 
    _inherit='hr.employee'

_columns={
    'emp_id':fields.char('Employee ID',readonly=True)
}

 

def create(self, cr, uid, vals, context=None):
           vals['emp_id'] = self.pool.get('ir.sequence').get(cr, uid, 'hr.employee')
           return super(hr_employee, self).create(cr, uid, vals, context=context)


_defaults={
                'emp_id': lambda obj, cr, uid, context: '/',
               
                
              }


====================================================================================
create xml view file

 

<record id="hr_form_inherited" model="ir.ui.view">
                <field name="name">hr new1</field>
                <field name="model">hr.employee</field>
                <field name="type">form</field>
                <field name="inherit_id" ref="hr.view_employee_form"/>
                <field name="arch" type="xml">
                    <xpath expr="/form/sheet/div/field[@name='category_ids']" position="after">
                        
                        <field name="emp_id" string="Employee ID" />
                    </xpath>


</record>
===========================================================================================


==========================================================================================

create a xml file like below and add this file name in openerp.py

<?xml version="1.0" encoding="utf-8"?>
<openerp>
    <data noupdate="1">
 
        <!-- Sequences for employee code -->
        <record id="seq__hr_code_inh1" model="ir.sequence.type">
            <field name="name">Employee ID</field>
            <field name="code">hr.employee</field>
        </record>
 
        <record id="seq_hr_code_inh2" model="ir.sequence">
            <field name="name">Employee ID </field>
            <field name="code">hr.employee</field>
            <field name="prefix">CU</field>
            <field name="padding">2</field>
             
        </record>
         
        
 
 
    </data>
</openerp>

=================================================================================================

0
Avatar
Verwerfen
klacus

We are working parallel :-) Nice job!

ABU K

Hi We can override the super class method once create a new record in hr.employee using super() .Same way we can access all the super class method when we use inherit or...

Avatar
Anil Kesariya
Beste Antwort

@Ken Kasai

This question is already asked some one.

Click Here   For more better solution.

Regards,

Anil.

2
Avatar
Verwerfen
Avatar
Marcus Baw
Beste Antwort

I looked all over and the only tutorial or explanation that was in any way helpful is this excellent YouTube video from Odoo Mates, which completely solved the problem of adding auto-incrementing behaviour to a field

https://www.youtube.com/watch?v=Cz5eM5FDmTE

0
Avatar
Verwerfen
Avatar
Umashankar Subramani
Beste Antwort

Hi LIBU Plz tell me what is the use of the super keyword, i am new to odoo....thanks in advance

0
Avatar
Verwerfen
Avatar
Mahesh P M
Beste Antwort


Just other flavor with out messing up with the code.

I used pgSQL Trigger For that..

I created 1 table(<table name> with only one column<column name> as of integer type and inserted 0 (count down start) to it as first row

on the sql window

i typed and executed

CREATE OR REPLACE FUNCTION process_emp_generate() RETURNS TRIGGER AS $emp_key$

DECLARE

ind_key integer;

BEGIN

SELECT <column name>

into ind_key

FROM <table name>;

IF (TG_OP = 'INSERT') THEN

UPDATE hr_employee SET <column name by which odoo stores employee id> = ind_key , identification_id = ind_key WHERE id = new.id;

update <table name> set <column name> = (select <column name>+1 from <table name>);

END IF;

RETURN NULL; -- result is ignored since this is an AFTER trigger

END;

$emp_key$ LANGUAGE plpgsql;

then

created a trigger event

CREATE TRIGGER emp_insert

AFTER INSERT ON hr_employee

FOR EACH ROW EXECUTE PROCEDURE process_emp_generate();


hope you solved the problem if other things are not working

0
Avatar
Verwerfen
Avatar
Ken Kasai
Autor Beste Antwort

thank you!

0
Avatar
Verwerfen
Avatar
klacus
Beste Antwort

You have to inherit the hr.employee object. create the new modul put the folder a new file>> hr_employee.py

class hr_employee(osv.osv):

    _name = 'hr.employee'
    _inherit = 'hr.employee'

    _columns = {
                'name_id':fields.char('HR code',size=8,required=True),

}

    _defaults = {
                 'name_id': lambda obj, cr, uid, context: obj.pool.get('ir.sequence').get(cr, uid, 'hr_id.code'),
                 }

hr_employee()

You have to create an xml file what is define the sequence:

<?xml version="1.0" encoding="utf-8"?>
<openerp>
    <data noupdate="1">

        <record id="seq_type_hr_code" model="ir.sequence.type">
            <field name="name">HR Seq</field>
            <field name="code">hr_id.code</field>
        </record>

        <record id="seq_hr_code" model="ir.sequence">
            <field name="name">HR Seq</field>
            <field name="code">hr_id.code</field>
            <field name="prefix">HRE_</field>
            <field name="padding">4</field>
            <field name="company_id" eval="False"/>
        </record>

    </data>
</openerp>

After that you have to inherit hr_employe.xml, in form. like:

 <record id="view_employee_form" model="ir.ui.view">
            <field name="name">hr.employee.form.csysc.inherit</field>
            <field name="model">hr.employee</field>
            <field name="type">form</field>
              <field name="inherit_id" ref="hr.view_employee_form"/>              
            <field name="arch" type="xml">           
                    <field name="birthday" position="after">
                        <field name="name_id" readonly='1'/>   

                        </field>

            </field>
 </record>

put the py in the import section for ___init___.py file, and put the xml (inherit and sequence into the __openerp__.py according the rule of the inheriting

https://doc.odoo.com/v6.0/developer/2_5_Objects_Fields_Methods/object_inherit.html/

)

Hope this helps.

0
Avatar
Verwerfen
Diskutieren Sie gerne? Treten Sie bei, statt nur zu lesen!

Erstellen Sie heute ein Konto, um exklusive Funktionen zu nutzen und mit unserer tollen Community zu interagieren!

Registrieren
Verknüpfte Beiträge Antworten Ansichten Aktivität
I want create menu that show list of employee birthday in current month. Gelöst
hr employee
Avatar
Avatar
Avatar
Avatar
Avatar
11
Jan. 19
10707
Employee Resume - Department Changes (V17)
hr employee department
Avatar
Avatar
1
Juni 24
2266
[Odoo 16] How to end collaboration with / separate / offboard an employee Gelöst
hr employee quickstart
Avatar
1
Dez. 22
4968
How can I create Employee Code in a sequence field Gelöst
v6.1 hr employee
Avatar
Avatar
Avatar
Avatar
14
Aug. 20
32815
How to manage employee training ?
hr employee training
Avatar
Avatar
Avatar
3
Feb. 19
10794
Community
  • Tutorials
  • Dokumentation
  • Forum
Open Source
  • Herunterladen
  • Github
  • Runbot
  • Übersetzungen
Dienstleistungen
  • Odoo.sh-Hosting
  • Support
  • Upgrade
  • Individuelle Entwicklungen
  • Ausbildung
  • Buchhalter finden
  • Partner finden
  • Partner werden
Über uns
  • Unsere Firma
  • Markenwerte
  • Kontakt
  • Karriere
  • Veranstaltungen
  • Podcast
  • Blog
  • Kunden
  • Rechtliches • Datenschutz
  • Sicherheit
الْعَرَبيّة 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 ist eine Suite von Open-Source-Betriebsanwendungen, die alle Bedürfnisse Ihres Unternehmens abdecken: CRM, E-Commerce, Buchhaltung, Lager, Kassensystem, Projektmanagement etc.

Das einzigartige Wertversprechen von Odoo ist, dass es gleichzeitig sehr einfach zu bedienen und voll integriert ist.

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