Skip to Content
Odoo Menu
  • Prijavi
  • Try it free
  • Aplikacije
    Finance
    • Knjigovodstvo
    • Obračun
    • Stroški
    • Spreadsheet (BI)
    • Dokumenti
    • Podpisovanje
    Prodaja
    • CRM
    • Prodaja
    • POS Shop
    • POS Restaurant
    • Naročnine
    • Najem
    Spletne strani
    • Website Builder
    • Spletna trgovina
    • Blog
    • Forum
    • Pogovor v živo
    • eUčenje
    Dobavna veriga
    • Zaloga
    • Proizvodnja
    • PLM
    • Nabava
    • Vzdrževanje
    • Kakovost
    Kadri
    • Kadri
    • Kadrovanje
    • Odsotnost
    • Ocenjevanja
    • Priporočila
    • Vozni park
    Marketing
    • Družbeno Trženje
    • Email Marketing
    • SMS Marketing
    • Dogodki
    • Avtomatizacija trženja
    • Ankete
    Storitve
    • Projekt
    • Časovnice
    • Storitve na terenu
    • Služba za pomoč
    • Načrtovanje
    • Termini
    Produktivnost
    • Razprave
    • Odobritve
    • IoT
    • Voip
    • Znanje
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industrije
    Trgovina na drobno
    • Book Store
    • Trgovina z oblačili
    • Trgovina s pohištvom
    • Grocery Store
    • Trgovina s strojno opremo računalnikov
    • Trgovina z igračami
    Food & Hospitality
    • Bar and Pub
    • Restavracija
    • Hitra hrana
    • Guest House
    • Beverage Distributor
    • Hotel
    Nepremičnine
    • Real Estate Agency
    • Arhitekturno podjetje
    • Gradbeništvo
    • Estate Management
    • Vrtnarjenje
    • Združenje lastnikov nepremičnin
    Svetovanje
    • Računovodsko podjetje
    • Odoo Partner
    • Marketinška agencija
    • Law firm
    • Pridobivanje talentov
    • Audit & Certification
    Proizvodnja
    • Tekstil
    • Metal
    • Pohištvo
    • Hrana
    • Brewery
    • Poslovna darila
    Health & Fitness
    • Športni klub
    • Trgovina z očali
    • Fitnes center
    • Wellness Practitioners
    • Lekarna
    • Frizerski salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Sistemi sončne energije
    • Izdelovalec čevljev
    • Čistilne storitve
    • HVAC Services
    Ostali
    • Neprofitna organizacija
    • Agencija za okolje
    • Najem oglasnih panojev
    • Fotografija
    • Najem koles
    • Prodajalec programske opreme
    Browse all Industries
  • Skupnost
    Learn
    • Tutorials
    • Dokumentacija
    • Certifikati
    • Šolanje
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Prenesi
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Dogodki
    • Prevodi
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
    • Meet an advisor
    • Implementation Services
    • Sklici kupca
    • Podpora
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Get a demo
  • Določanje cen
  • Pomoč

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

  • CRM
  • e-Commerce
  • Knjigovodstvo
  • Zaloga
  • PoS
  • Projekt
  • MRP
All apps
You need to be registered to interact with the community.
All Posts People Badges
Ključne besede (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Ključne besede (View all)
odoo accounting v14 pos v15
About this forum
Pomoč

Add a signature field in my XML view with Odoo 16 and custom modules

Naroči se

Get notified when there's activity on this post

This question has been flagged
modulesxmlviewwidgetsignature
3 Odgovori
8745 Prikazi
Avatar
Jules

I am developing a custom module for Odoo 16.
This module adds a form to the /open-account-b2b route that creates a contact and if desired, also creates a SEPA payment mandate.
I know that on Odoo, it's possible to have a signature field where you can draw, upload or automatically generate a signature. I'd like to add this field to my XML view to eventually generate a document for setting up the SEPA mandate.

However, I can't figure out how to do it.

Here's my XML view:


"1.0" encoding="utf-8"?>
<odoo>
    <template id="form_view" name="B2B Registration Form">
        <t t-call="website.layout">
            <form action="/submit-registration-form" method="post" class="registration_form">
                <img src="/b2b_registration/static/src/img/ellispe_black.png"
                    alt="Logo Ellispe Industries"
                    id="ellipse_logo" />
                <h1>Formulaire d'ouverture de compte B2Bh1>

                <t t-if="error_msg">
                    <div class="alert alert-danger">
                        <t t-esc="error_msg" />
                    div>
                t>

                <div>
                    <label class="required">Civilitélabel>
                    <select name="title">
                        <option value="3" selected="selected">Monsieuroption>
                        <option value="1">Madameoption>
                        <option value="2">Mademoiselleoption>
                    select>
                div>

                <div>
                    <label class="required">Représentantlabel>
                    <input type="text" name="fullname"
                        placeholder="ex: Pierre DUPONT" required="1" />
                div>

                <div>
                    <label class="required">Emaillabel>
                    <input type="email" name="email"
                        placeholder="" required="1" id="email-field" />
                div>

                <div>
                    <label class="required">Téléphonelabel>
                    <input type="tel" name="phone"
                        placeholder="" required="1" id="phone-field" />
                    <span>06 ou 07 pour recevoir les notifications de livraison par SMSspan>
                div>

                <br class="space" />

                <div>
                    <label class="required">Raison Socialelabel>
                    <input type="text" name="company_name"
                        placeholder="" required="1" />
                div>

                <div>
                    <label class="not-required">Site Weblabel>
                    <input type="text" name="website"
                        placeholder="" />
                div>

                <div>
                    <label class="required">SIRETlabel>
                    <input type="text" name="company_registry"
                        placeholder="" required="1" />
                div>

                <div>
                    <label class="required">N° de TVAlabel>
                    <input type="text" name="vat"
                        placeholder="" required="1" />
                div>

                <div>
                    <label class="required">Poste Occupélabel>
                    <input type="text" name="function"
                        placeholder="" required="1" />
                div>

                <div id="billing_address_fields">
                    <label class="required">Adresse de facturationlabel>
                    <input type="text" name="street"
                        placeholder="" />
                    <span>Rue *span>

                    <input type="text" name="street2"
                        placeholder="" />
                    <span>Rue 2span>

                    <input type="text" name="zip"
                        placeholder="" />
                    <span>Code Postal *span>

                    <input type="text" name="city"
                        placeholder="" />
                    <span>Ville *span>

                    <select name="country_id">
                        <option value="75" selected="selected">Franceoption>
                    select>
                    <span>Pays *span>
                div>

                <div class="row">
                    <input type="checkbox" id="same_address" name="same_address" value="yes" />
                    <label for="same_address">L'adresse de facturation est différente de l'adresse
                        de
                        livraisonlabel>
                div>

                <div id="delivery_address_fields">
                    <label class="required">Adresse de livraisonlabel>
                    <input type="text" name="shipping_street"
                        placeholder="" />
                    <span>Rue *span>

                    <input type="text" name="shipping_street2"
                        placeholder="" />
                    <span>Rue 2span>

                    <input type="text" name="shipping_zip" placeholder=""
                    />
                    <span>Code Postal *span>

                    <input type="text" name="shipping_city" placeholder=""
                    />
                    <span>Ville *span>

                    <select name="shipping_country_id">
                        <option value="75" selected="selected">Franceoption>
                    select>
                    <span>Pays *span>
                div>

                <div class="row" id="sepa_auth_row">
                    <input type="checkbox" id="sepa_auth" name="sepa_auth" value="yes"
                        checked="True" />
                    <label for="sepa_auth">J'autorise Ellipse à mettre en place le prélèvement
                        automatiquelabel>
                div>
                <div id="bank_fields">
                    <label class="required">Informations bancaireslabel>
                    <input type="text" name="iban_number"
                        placeholder="" />
                    <span>IBAN *span>

                    <input type="text" name="bic_number"
                        placeholder="" />
                    <span>BIC *span>

                    <input type="text" name="bank_name"
                        placeholder="" />
                    <span>Nom de la banque *span>
                div>

                <div class="row">
                    <input type="checkbox" id="cgv_checkbox" name="cgv_checkbox" value="yes"
                        required="1" />
                    <label for="cgv_checkbox">J'accepte les <a
                            href="https://drive.google.com/file/d/1hSY4IA0IwKyoVagGN_Ro_NUrjx9naT1u/view?usp=sharing"
                            target="_blank" id="cgv-link">Conditions
                            Générales de Ventea> d'Ellipse Industries *label>
                div>

                

                <input id="submit-btn" type="submit" value="Soumettre" />
            form>
        t>
    template>
odoo>

If you need more information, don't hesitate to contact us.

Thank you very much.

0
Avatar
Opusti
Jules
Avtor

Yes I did. When I am adding the following field just before my submit input for example, nothing is happening. 

field name="signature" widget="signature"

Avatar
Maulik shah
Best Answer
  • Add a signature field in my XML view with Odoo 16 and custom modules
    In odoo backend, pass widget="signature" to binary field of signature in xml file.
    for an example,

    https://drive.google.com/file/d/123Erl2Mr2pbOc1yfQaedy3hWOq_D0KyB/view?usp=sharing


    And in odoo front-end you can use directly pre defined div for signature.
    For an example,


    https://drive.google.com/file/d/1sgHkoh7vEoZQ0HtHjPp4faIsN6uWuFT3/view?usp=sharing
0
Avatar
Opusti
Avatar
Med Said BARA
Best Answer

Try to see how the "Signature Widget" is used in the following modules (even if it's not for v16):

https://blog.tenthplanet.in/6-easy-steps-to-create-digital-signature-in-odoo-community-edition/


https://apps.odoo.com/apps/modules/12.0/web_widget_digitized_signature/

web_widget_digitized_signature


web_digital_sign

0
Avatar
Opusti
Avatar
Cybrosys Techno Solutions Pvt.Ltd
Best Answer

Hi,

In odoo backend, the signature is recorded using a widget called widget="signature". It is basically a Binary field which stores it as binary data. One way you can do it on the website is to upload your signature using file input and write that to the backend field on submitting the field.

Hope it helps

0
Avatar
Opusti
Enjoying the discussion? Don't just read, join in!

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

Prijavi
Related Posts Odgovori Prikazi Aktivnost
How to truncate text field ?
fields xml view widget truncate
Avatar
Avatar
Avatar
2
apr. 16
18977
How do I remove a button from the sale.order.form? Solved
xml view
Avatar
Avatar
Avatar
Avatar
Avatar
6
sep. 17
9375
How to update config setting from XML in Odoo
modules xml
Avatar
0
apr. 17
6042
what is wrong with this code? error is on name="arch" type="xml"
modules xml
Avatar
Avatar
Avatar
Avatar
3
maj 16
8919
display view if user is anonymous
xml view
Avatar
Avatar
1
mar. 15
5148
Community
  • Tutorials
  • Dokumentacija
  • Forum
Open Source
  • Prenesi
  • Github
  • Runbot
  • Prevodi
Services
  • Odoo.sh Hosting
  • Podpora
  • Nadgradnja
  • Custom Developments
  • Izobraževanje
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Sredstva blagovne znamke
  • Kontakt
  • Zaposlitve
  • Dogodki
  • Podcast
  • Blog
  • Stranke
  • Pravno • Zasebnost
  • Varnost
الْعَرَبيّة 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 is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

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