Přejít na obsah
Odoo Menu
  • Přihlásit se
  • Vyzkoušejte zdarma
  • Aplikace
    Finance
    • Účetnictví
    • Fakturace
    • Výdaje
    • Spreadsheet (BI)
    • Dokumenty
    • Podpisy
    Prodej
    • CRM
    • Prodej
    • POS Obchod
    • POS Restaurace
    • Předplatné
    • Pronájem
    Webové stránky
    • Webové stránky
    • E-shop
    • Blog
    • Fórum
    • Živý chat
    • eLearning
    Dodavatelský řetězec
    • Sklad
    • Výroba
    • PLM
    • Nákup
    • Údržba
    • Kvalita
    Lidské zdroje
    • Zaměstnanci
    • Nábor
    • Volno
    • Hodnocení zaměstnanců
    • Doporučení
    • Vozový park
    Marketing
    • Marketing sociálních sítí
    • Emailový marketing
    • SMS Marketing
    • Události
    • Marketingová automatizace
    • Dotazníky
    Služby
    • Projekt
    • Časové výkazy
    • Práce v terénu
    • Helpdesk
    • Plánování
    • Schůzky
    Produktivita
    • Diskuze
    • Schvalování
    • IoT
    • VoIP
    • Věda
    • WhatsApp
    Aplikace třetích stran Odoo Studio Odoo cloudová platforma
  • Branže
    Maloobchod
    • Knihkupectví
    • Obchod s oblečením
    • Obchod s nábytkem
    • Potraviny
    • Obchod s hardwarem
    • Hračkářství
    Jídlo a pohostinství
    • Bar a Pub
    • Restaurace
    • Fast Food
    • Penzion
    • Distributor nápojů
    • Hotel
    Nemovitost
    • Realitní kancelář
    • Architektonická firma
    • Stavba
    • Správa nemovitostí
    • Zahradnictví
    • Asociace vlastníků nemovitosti
    Poradenství
    • Účetní firma
    • Odoo Partner
    • Marketingová agentura
    • Právník
    • Akvizice talentů
    • Audit a certifikace
    Výroba
    • Textil
    • Kov
    • Nábytek
    • Jídlo
    • Pivovar
    • Korporátní dárky
    Zdraví a fitness
    • Sportovní klub
    • Prodejna brýli
    • Fitness Centrum
    • Wellness praktikové
    • Lékárna
    • Kadeřnictví
    Transakce
    • Údržbář
    • Podpora IT & hardware
    • Systémy solární energie
    • Výrobce obuvi
    • Úklidové služby
    • Služby HVAC
    Ostatní
    • Nezisková organizace
    • Agentura pro životní prostředí
    • Pronájem billboardů
    • Fotografování
    • Leasing jízdních kol
    • Prodejce softwaru
    Procházet všechna odvětví
  • Komunita
    Edukační program
    • Tutoriály
    • Dokumentace
    • Certifikace
    • Vzdělávání
    • Blog
    • Podcast
    Podpora vzdělávání
    • Vzdělávací program
    • Scale Up! Hra na firmu
    • Navštivte Odoo
    Získat software
    • Stáhnout
    • Porovnejte edice
    • Verze
    Spolupráce
    • Github
    • Fórum
    • Události
    • Překlady
    • Stát se partnerem
    • Služby pro partnery
    • Registrujte svou účetní firmu
    Získat služby
    • Najít partnera
    • Najít účetní
    • Setkejte se s poradcem
    • Implementační služby
    • Zákaznické reference
    • Podpora
    • Upgrady
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Dohodnout demo
  • Ceník
  • Pomoc
You need to be registered to interact with the community.
All Posts Lidé Odznaky
Štítky (View all)
odoo accounting v14 pos v15
O tomto fóru
You need to be registered to interact with the community.
All Posts Lidé Odznaky
Štítky (View all)
odoo accounting v14 pos v15
O tomto fóru
Pomoc

load external file script via action button click

Odebírat

Get notified when there's activity on this post

This question has been flagged
buttons
2 Odpovědi
8746 Zobrazení
Avatar
Rizan Zaky

I want to run an external script by a button click. The button is placed in the tree view

    <tree string="Session Tree">
         <field name="name"/>
         <button name='myButton' type='action' string="Click me"/>
     </tree>

How can I achieve that?

0
Avatar
Zrušit
Avatar
Logicious
Nejlepší odpověď

Once i was used a pyhton code for getting document from external folder, i just made a small python script for that , you can refer this.

def get_document(self, cr, uid, ids, context=None):

matter_obj = self.pool.get('project.project')

attach_obj=self.pool.get('ir.attachment')

wizard_obj = self.pool.get('matter.attachment.wizard')

wizard_data = wizard_obj.browse(cr,uid,ids[0])

print'!!!!!!!!!!!!!!!',wizard_data.csv_file_path

print'!!!!!!!!!!!!!!!',wizard_data.document_path

if not os.path.exists(wizard_data.csv_file_path):

raise osv.except_osv(_('Warning!'), _('There is no CSV File Path exist, Choose right path'))

if not os.path.exists(wizard_data.document_path):

raise osv.except_osv(_('Warning!'), _('There is no Document File Path exist, Choose right path'))

files = glob.glob(wizard_data.csv_file_path)

for file in files:

f=open(file, 'r')

for m in f.readlines():

print '%s' % m

get_lst=m.split(',')

if len(get_lst)>=4:

print'-------',get_lst[1]

print'#########',get_lst[4]

d = get_lst[4]

print 'dddddddddddddddd',d

search_ids= matter_obj.search(cr,uid,[('name','=',get_lst[1])])

print'%%%%%%%%%',len(search_ids)

if len(search_ids):

matter_data = matter_obj.browse(cr,uid,search_ids[0])

matter_obj.write(cr,uid,matter_data.id,{'info':''})

if get_lst[4]!=False:

print']]]]]]]',"/home/logicious/Downloads/document/files/"+get_lst[4]

file_name=get_lst[4]

# if get_lst[4].find('.')!=-1:

# ext=get_lst[4].split('.')[1]

# file_name=get_lst[4].split('.')[0]+'.'+ext.lower()

# print'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++',"/home/logicious/Downloads/document/files/"+file_name

# print '****************************',wizard_data.document_path+file_name

if os.path.exists(wizard_data.document_path+file_name):

m = open(wizard_data.document_path+file_name,'rb')

# search in matter with matter_data.name res_model res_id

#if yes than delte unlink

exist_data = attach_obj.search(cr,uid,[('res_id','=',matter_data.id)],[('res_model','=','project.project')])

print 'eeeeeeeeeee',exist_data

if exist_data:

attach_obj.unlink(cr, uid, ids, context=contex)

else:

attach_vals = {

'name': str(get_lst[4]),

'datas': base64.b64encode(m.read()),

'description': 'files',

'user_id':str(get_lst[7]),

'res_name': matter_data.name,

'res_model': 'project.project',

'res_id': matter_data.id,

}

attach_id = attach_obj.create(cr, uid, attach_vals)

else:

#message = matter_obj.browse(cr,uid,import_info)

message = matter_obj.browse(cr, uid,matter_data.id)

print'============',message.import_info

if message.import_info!=False:

matter_obj.write(cr,uid,matter_data.id,{'import_info':message.import_info +str(get_lst[4])+ ' File not attached...'})

else:

print'======@@@@@@@@@@@@@',matter_data.id

matter_obj.write(cr,uid,matter_data.id,{'import_info':str(get_lst[4])+ ' File not attached....'})

f.close()

return True


, i created a wizard based on this , and i just create one button and to getting the documents.


0
Avatar
Zrušit
Avatar
André Pereira
Nejlepší odpověď

I am assuming you're using Odoo 8. What we usually do is add a class to the button, e.g.:

<button name="myButton" class="session-button" ...

And then we load a JavaScript file that attaches an event to that button using the class to identify it, e.g.:

$('.session-button').click(function() {
// your code here...
});

This JavaScript file can be loaded by extending the assets backend view:

<template id="assets_backend" name="my-module assets" inherit_id="web.assets_backend">
<xpath expr="." position="inside">
<script type="text/javascript" src="/my-module/static/src/js/my-js-file.js"></script>
</xpath>
</template>

I recommend adding a dependency on the "web" module as well.

0
Avatar
Zrušit
Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Přihlásit se
Related Posts Odpovědi Zobrazení Aktivita
Custom stat button (eo_stat_button) for a custom field on a partner
buttons
Avatar
Avatar
Avatar
2
bře 23
11710
Cacher le bouton "créer" d'une liste Vyřešeno
buttons
Avatar
Avatar
2
bře 23
3650
Add class to button from function Vyřešeno
buttons
Avatar
Avatar
2
kvě 22
5978
Bind object btn to model_id action btn?
buttons
Avatar
0
bře 22
2483
PLEASE HELP - Odoo 12 - How do you replace Create button when you inherit Product.Template
buttons
Avatar
Avatar
1
kvě 21
5503
Komunita
  • Tutoriály
  • Dokumentace
  • Fórum
Open Source
  • Stáhnout
  • Github
  • Runbot
  • Překlady
Služby
  • Odoo.sh hostování
  • Podpora
  • Upgrade
  • Nestandardní vývoj
  • Edukační program
  • Najít účetní
  • Najít partnera
  • Stát se partnerem
O nás
  • Naše společnost
  • Podklady značky
  • Kontakujte nás
  • Práce
  • Události
  • Podcast
  • Blog
  • Zákazníci
  • Právní dokumenty • Soukromí
  • Zabezpečení
الْعَرَبيّة 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 Svenska ภาษาไทย Türkçe українська Tiếng Việt

Odoo je balíček open-source aplikací, které pokrývají všechny potřeby vaší společnosti: CRM, e-shop, účetnictví, sklady, kasy, projektové řízení a další.

Unikátní nabídka od Odoo poskytuje velmi jednoduché uživatelské rozhraní a vše je integrované na jednom místě.

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