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

fields function type selection

Zaprenumeruj

Otrzymaj powiadomienie o aktywności w tym poście

To pytanie dostało ostrzeżenie
functionfieldselectiontype
4 Odpowiedzi
37371 Widoki
Awatar
omkar

Hi Buddies.

Good morning.

I am trying this from the couple of days but no luck..

I read the data from the table and split that into selection fields list and try to return through the function..

The Function was working Fine , But I am unable to see or edit the Selection field ..

Here is My XML Code..

    <record id="hr_team_action" model="ir.actions.act_window">
        <field name="name">Team</field>
        <field name="res_model">hr.employee</field>
        <field name="view_type">form</field>
        <field name="view_mode">tree,form</field>
        <field name="view_id" ref="view_hr_team_tree"/>
    </record>

    <record model="ir.ui.view" id="view_hr_team_form">
        <field name="name">hr.team.form</field>
        <field name="model">hr.employee</field>
        <field name="arch" type="xml">
            <notebook position="inside">
               <page string="Team">
                    <group col="4">
                        <field name="name_related"/>
                        <field name="department_id"/>
                        <field name="work_location"/>
                        <field name="job_id"/>
                        <button name="%(act_view_hr_performancegoals_tree)d" type="action" string="Assign Goals" class="oe_link oe_edit_only" icon="STOCK_DIRECTORY_MENU"/>
                    </group>
                </page>
              </notebook>
        </field>
    </record>

    <record model="ir.ui.view" id="view_hr_team_tree">
        <field name="name">hr.team.form</field>
        <field name="model">hr.employee</field>
        <field name="type">tree</field>
        <field name="arch" type="xml">
            <tree string="Team" editable="bottom" >
                        <field name="name_related"/>
                        <field name="department_id"/>
                        <field name="work_location"/>
                        <field name="job_id"/>
                        <button name="%(act_view_hr_performancegoals_tree)d" type="action" string="Assign Goals" class="oe_link oe_edit_only" icon="STOCK_DIRECTORY_MENU"/>
            </tree>
        </field>
    </record>

...................................................................................

.py file

class hr_performancegoals(osv.osv): _name = "hr.performancegoals" _description = "Performance Goals"

 def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
     if context is None:
        context = {}
     print "Sateesh testing here",uid
     result = super(hr_performancegoals, self).fields_view_get(cr, uid, view_id,view_type, context, toolbar,submenu)
     data = result['arch']
     if uid == 1:
        L=[]
        ldata = data.split("\n")
        for var in ldata:
             if re.search("parent_id",var):
                 pass
             else:
                 L.append(var)
        reqdata =''.join(L)
        result['arch']=reqdata
     else:
        L=[]
        ldata = data.split("\n")
        for var in ldata:
             if re.search("strategic_goals",var):
                 pass
             else:
                 L.append(var)
        reqdata =''.join(L)
        result['arch']=reqdata
     return result


 def _get_objectives(self,cr,uid,ids,name,args,context=None):
     res= dict.fromkeys(ids,'')
     print "In Objectives"
     cr.execute("select objectives from hr_performancegoals")
     data = cr.dictfetchall()
     L=[]
     for i,values in enumerate(data):
         a=unicodedata.normalize('NFKD', values['objectives']).encode('ascii','ignore')
         rest=a.split(',')
         print "Here is the List:",rest
         if len(rest)!=0:
             for j,val in enumerate(rest):
                 L.append((j,val))
                 i=j
         else:
             L.append((i,rest))
     print "Value Here :",L
     res['values']=L
     return res


 def _get_employee_id(self,cr,uid,ids,name,arg,context=None):
    res = dict.fromkeys(ids, uid)
    print "sateesh testing employee_id",res   #res['employee_id'], type(res['employee_id'])
    return res

 _columns = {
'employee_id': fields.function(_get_employee_id,method=True, type='integer', string="Employee",store=True),
'strategic_goals': fields.char('Strategic Goals', required=True),
'parent_id': fields.function(_get_objectives, type='selection',method=True, string="Stratergic Goals Parent"),
'objectives' : fields.text('Objectives'),
'completion_date' : fields.date('Completion Date'),
'specific_actions_required_to_deliver_strategic_goal' : fields.text('Specific Actions Required To Deliver Strategic Goal'),
'status': fields.selection([('1','Yet To Start'),
                           ('2','In Progress'),
                           ('3','Invalid'),
                           ('4','Completed'),
                           ('5','Closed'),],
                            'Status', required=True),

}

Working with Human Resource Module

1
Awatar
Odrzuć
Awatar
Prakash
Najlepsza odpowiedź

In python file selection functional field replace with below code it will works:-

from osv import osv, fields

SELECTION_LIST = [
   ('1','Yet To Start'),
   ('2','In Progress'),
   ('3','Invalid'),
    ('4','Completed'),
    ('5','Closed'),
]
'parent_id': fields.function(_get_objectives, type='selection',method=True,  selection=SELECTION_LIST, string="Stratergic Goals Parent"),
2
Awatar
Odrzuć
omkar
Autor

Thanks a Lot

Awatar
wilson zauma
Najlepsza odpowiedź

I use a function and relation with this in my_file.py:

def _buscar_shortname_alm(self, cr, uid, context=None):

        obj=self.pool.get('stock.location')
        ids = obj.search(cr, uid, [('shortcut', '!=', False),('usage','in',('internal','production'))],
            order='shortcut') 
         resultado = obj.read(cr, uid, ids, ['id','shortcut'], context)

        #convertimos a una lista de tuplas
        res = []
        for record in resultado:
            #creamos la tupla interna
            rec = []
            #convertimos a cadena el ID para crear la tupla
            rec.append(str(record['id']))
            rec.append(record['shortcut'])
            #agregamos a tupla final
            res.append(tuple(rec))
         return res

And the _columns put this:

'aux_almacen_orig': fields.selection(_buscar_shortname_alm, type="char",store=True, method=True,size=256, required=True, string="Almacen Origen" ),

Then i put this in my_file.xml

<field name="aux_almacen_orig" />

And finally this is the result. http://(www).orchidshouseperu.com/screenshots/Seleccion_041.png

1
Awatar
Odrzuć
Awatar
omkar
Autor Najlepsza odpowiedź

Thanks Prakash..

Thanks for your Help.

I worked in different manner and it help me in getting the tuple.

def get_objectives(self,cr,uid,ids,context):
    cr.execute("select objectives from hr_performancegoals")
     data = cr.dictfetchall()
     L=[]
     for i,values in enumerate(data):
         a=unicodedata.normalize('NFKD', values['objectives']).encode('ascii','ignore')
             L.append((str(i),rest))
     return L


'parent_id': fields.function(get_objectives, type='selection',method=True,  string="Stratergic Goals Parent"),

This work for me..

1
Awatar
Odrzuć
Awatar
TEIMI Yassine
Najlepsza odpowiedź

Hi omkar, I have the same problem, Could you please tell me what is rest variable for ? Thanks a lot.

0
Awatar
Odrzuć
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ść
Purchase Order Function Field Issue
function field
Awatar
0
mar 15
4640
field visible as text for manager and dropdown for employee
field selection
Awatar
0
mar 15
4426
get Id in field selection
field selection
Awatar
Awatar
1
mar 15
9373
Function field issue
function field
Awatar
Awatar
1
mar 15
4942
Can you check a code of my module : filed. function
function field
Awatar
Awatar
2
mar 15
5495
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