Repository
OCA/l10n-italy · module folder · Try on Runboat
Module version
1.10.1
Category
Localization/Italy
Folder size
3.12 MB
License
AGPL-3
Application
No
Auto-installable
No
Website
https://github.com/OCA/l10n-italy/tree/12.0/l10n_it_ddt
Last tracking update
2026-08-07 07:31:52
Authors
Odoo Community Association (OCA), Agile Business Group, Davide Corio, Francesco Apruzzese, Openforce di Camilli Alessandro
Maintainers
Odoo Community Association (OCA), Agile Business Group, Davide Corio, Francesco Apruzzese, Openforce di Camilli Alessandro
Committers
eLBati, Lorenzo Battistini, tafaRU, Alfredo Zamora, Simone Rubino, sergiocorato, Weblate, Alex Comba, OCA Transbot, OCA-git-bot, oca-travis, SimoRubi, Lara Baggio, oca-ci
Odoo dependencies
Python dependencies
None
System dependencies
None
Required by
account_invoice_report_ddt_group, l10n_it_accompanying_invoice, l10n_it_account_stamp_ddt, l10n_it_ddt_mrp_kit, l10n_it_fatturapa_out_ddt
Description

Code Analysis

Views touched (32)
XML IDNameModelTypeStatus
ddt_stock_picking_package_preparation_form ddt.stock.picking.package.preparation.form stock.picking.package.preparation form Inherits stock_picking_package_preparation.stock_picking_package_preparation_form
ddt_stock_picking_package_preparation_search ddt.stock.picking.package.preparation.search stock.picking.package.preparation search New
ddt_stock_picking_package_preparation_tree ddt.stock.picking.package.preparation.tree stock.picking.package.preparation tree Inherits stock_picking_package_preparation.stock_picking_package_preparation_tree
delivery_data delivery_data ir.ui.view qweb New
invoice_form_view_ddt account.invoice.form.ddt account.invoice form Inherits account.invoice_form
product_template_form_view_ddt_invoicing product.template.form.ddt.invoicing product.template form Inherits sale.product_template_form_view_invoice_policy
report_ddt report_ddt ir.ui.view qweb New
report_ddt_main report_ddt_main ir.ui.view qweb New
sale_order_form_view_ddt sale.order.form.ddt sale.order form Inherits sale.view_order_form
sppp_line_stock_picking_package_preparation_form_ddt sppp.line.stock.picking.package.preparation.form.ddt stock.picking.package.preparation form Inherits stock_picking_package_preparation_line.sppp_line_stock_picking_package_preparation_form
stock_goods_description_form stock.picking.goods_description.form stock.picking.goods_description form New
stock_location_form_view_inherit stock.location.form.inherit stock.location form Inherits stock.view_location_form
stock_picking_package_preparation_invoicing_form stock.picking.package.preparation.invoicing.form stock.picking.package.preparation form Inherits stock_picking_package_preparation.stock_picking_package_preparation_form
stock_picking_package_preparation_invoicing_tree stock.picking.package.preparation.invoicing.tree stock.picking.package.preparation tree Inherits stock_picking_package_preparation.stock_picking_package_preparation_tree
stock_picking_tree_ddt stock.picking.tree.ddt stock.picking tree Inherits stock.vpicktree
view_add_pickings_to_ddt Add Pickings to TD add.pickings.to.ddt form New
view_carriage_condition_form stock.picking.carriage_condition.form stock.picking.carriage_condition form New
view_carriage_condition_tree stock.picking.carriage_condition.tree stock.picking.carriage_condition tree New
view_ddt_create_invoice TD Create Invoice ddt.create.invoice form New
view_ddt_from_pickings TD from Pickings ddt.from.pickings form New
view_ddt_invoicing TD Invoicing ddt.invoicing form New
view_ddt_type_form stock.ddt.type.form stock.ddt.type form New
view_ddt_type_tree stock.ddt.type.tree stock.ddt.type tree New
view_goods_description_tree stock.picking.goods_description.tree stock.picking.goods_description tree New
view_order_form_view_ddt sale.order.form.view.ddt sale.order form Inherits sale_stock.view_order_form_inherit_sale_stock
view_partner_form_ddt res.partner.form.ddt res.partner form Inherits base.view_partner_form
view_picking_form stock.picking.form.ddt stock.picking form Inherits stock.view_picking_form
view_picking_internal_search view.picking.search.ddt stock.picking search Inherits stock.view_picking_internal_search
view_transportation_method_form stock.picking.transportation_method.form stock.picking.transportation_method form New
view_transportation_method_tree stock.picking.transportation_method.tree stock.picking.transportation_method tree New
view_transportation_reason_form stock.picking.transportation_reason.form stock.picking.transportation_reason form New
view_transportation_reason_tree stock.picking.transportation_reason.tree stock.picking.transportation_reason tree New
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (18)

New fields (15)
  • carriage_condition_id Many2one → stock.picking.carriage_condition
    string='Carriage Condition' args: 'stock.picking.carriage_condition'
  • carrier_id Many2one → res.partner
    string='Carrier' args: 'res.partner'
  • carrier_tracking_ref Char
    copy=False string='Tracking Reference'
  • ddt_ids One2many → stock.picking.package.preparation
    string='TD' args: 'stock.picking.package.preparation', 'invoice_id'
  • dimension Char
  • goods_description_id Many2one → stock.picking.goods_description
    string='Description of Goods' args: 'stock.picking.goods_description'
  • gross_weight Float
    string='Gross Weight'
  • gross_weight_uom_id Many2one → uom.uom
    default=<expr> args: 'uom.uom', 'Gross Weight UoM'
  • parcels Integer
    args: 'Parcels'
  • transportation_method_id Many2one → stock.picking.transportation_method
    string='Method of Transportation' args: 'stock.picking.transportation_method'
  • transportation_reason_id Many2one → stock.picking.transportation_reason
    string='Reason for Transportation' args: 'stock.picking.transportation_reason'
  • volume Float
    args: 'Volume'
  • volume_uom_id Many2one → uom.uom
    default=<expr> args: 'uom.uom', 'Volume UoM'
  • weight Float
    string='Weight'
  • weight_manual_uom_id Many2one → uom.uom
    default=<expr> args: 'uom.uom', 'Net Weight UoM'
Public methods (0)

No public methods.

New fields (3)
  • ddt_id Many2one → stock.picking.package.preparation
    related='ddt_line_id.package_preparation_id' store=True string='TD' args: 'stock.picking.package.preparation'
  • ddt_line_id Many2one → stock.picking.package.preparation.line
    string='TD line' args: 'stock.picking.package.preparation.line'
  • ddt_sequence Integer
    related='ddt_line_id.sequence' store=True string='TD sequence'
Public methods (0)

No public methods.

New fields (1)
  • ddt_id Many2one → stock.picking.package.preparation
    args: 'stock.picking.package.preparation'
Public methods (1)
  • add_to_ddt(self)
    @api.multi

New fields (1)
  • ddt_ids Many2many → stock.picking.package.preparation
    default=_get_ddt_ids args: 'stock.picking.package.preparation'
Public methods (1)
  • create_invoice(self)
    @api.multi

New fields (1)
  • picking_ids Many2many → stock.picking
    default=_get_picking_ids args: 'stock.picking'
Public methods (1)
  • create_ddt(self)
    @api.multi

New fields (4)
  • date_from Date
    required=True string='Start Date'
  • date_invoice Date
    string='Invoice Date'
  • date_to Date
    required=True string='End Date'
  • journal_id Many2one → account.journal
    default=_default_journal domain=[('type', '=', 'sale')] string='Journal' args: 'account.journal'
Public methods (1)
  • create_invoices(self)
    @api.multi

New fields (1)
  • ddt_invoice_exclude Boolean
    default=True help='If flagged this service will not be automatically invoiced from DDT.' string='Exclude from DDT invoicing'
Public methods (0)

No public methods.

New fields (8)
  • carriage_condition_id Many2one → stock.picking.carriage_condition
    string='Carriage Condition' args: 'stock.picking.carriage_condition'
  • ddt_code_group Char
    string='Code group'
  • ddt_invoice_exclude Boolean
    help='If flagged services will not be automatically invoiced from DDT. If set on the partner, this parameter willbe automatically applied to Sale Orders.' string='Do not invoice services from DDT'
  • ddt_invoicing_group Selection
    default='billing_partner' required=True args: TD_INVOICING_GROUPS, 'TD invoicing group'
  • ddt_show_price Boolean
    help='Show prices and discounts in TD report' string='TD show prices'
  • goods_description_id Many2one → stock.picking.goods_description
    string='Description of Goods' args: 'stock.picking.goods_description'
  • transportation_method_id Many2one → stock.picking.transportation_method
    string='Method of Transportation' args: 'stock.picking.transportation_method'
  • transportation_reason_id Many2one → stock.picking.transportation_reason
    string='Reason for Transportation' args: 'stock.picking.transportation_reason'
Public methods (0)

No public methods.

New fields (17)
  • carriage_condition_id Many2one → stock.picking.carriage_condition
    string='Carriage Condition' args: 'stock.picking.carriage_condition'
  • create_ddt Boolean
    args: 'Automatically create the TD'
  • ddt_carrier_id Many2one → res.partner
    string='Carrier' args: 'res.partner'
  • ddt_ids Many2many → stock.picking.package.preparation
    compute='_compute_ddt_ids' string='Related TDs' args: 'stock.picking.package.preparation'
  • ddt_invoice_exclude Boolean
    help='If flagged services from this SO will not be automatically invoiced from DDT. This parameter can be set on partners and automatically applied to Sale Orders.' string='DDT do not invoice services'
  • ddt_invoicing_group Selection
    default='billing_partner' required=True args: TD_INVOICING_GROUPS, 'TD invoicing group'
  • ddt_show_price Boolean
    help='Show prices and discounts in TD report' string='TD show prices'
  • goods_description_id Many2one → stock.picking.goods_description
    string='Description of Goods' args: 'stock.picking.goods_description'
  • gross_weight Float
    string='Gross Weight'
  • gross_weight_uom_id Many2one → uom.uom
    default=<expr> args: 'uom.uom', 'Gross Weight UoM'
  • parcels Integer
    args: 'Parcels'
  • transportation_method_id Many2one → stock.picking.transportation_method
    string='Method of Transportation' args: 'stock.picking.transportation_method'
  • transportation_reason_id Many2one → stock.picking.transportation_reason
    string='Reason for Transportation' args: 'stock.picking.transportation_reason'
  • volume Float
    args: 'Volume'
  • volume_uom_id Many2one → uom.uom
    default=<expr> args: 'uom.uom', 'Volume UoM'
  • weight Float
    string='Weight'
  • weight_manual_uom_id Many2one → uom.uom
    default=<expr> args: 'uom.uom', 'Net Weight UoM'
Public methods (4)
  • action_confirm(self)
    @api.multi
  • action_invoice_create(self, grouped=False, final=False)
    @api.multi
  • action_view_ddt(self)
    @api.multi
  • onchange_partner_id(self)
    @api.multi@api.onchange('partner_id')

New fields (9)
  • company_id Many2one → res.company
    comodel_name='res.company' default=<expr> string='Company'
  • default_carriage_condition_id Many2one → stock.picking.carriage_condition
    string='Default Carriage Condition' args: 'stock.picking.carriage_condition'
  • default_goods_description_id Many2one → stock.picking.goods_description
    string='Default Description of Goods' args: 'stock.picking.goods_description'
  • default_note Text
    string='Default Note'
  • default_transportation_method_id Many2one → stock.picking.transportation_method
    string='Default Method of Transportation' args: 'stock.picking.transportation_method'
  • default_transportation_reason_id Many2one → stock.picking.transportation_reason
    string='Default Reason for Transportation' args: 'stock.picking.transportation_reason'
  • name Char
    required=True
  • note Text
    string='Note'
  • sequence_id Many2one → ir.sequence
    required=True args: 'ir.sequence'
Public methods (0)

No public methods.

New fields (1)
  • type_ddt_id Many2one → stock.ddt.type
    string='TD type' args: 'stock.ddt.type'
Public methods (0)

No public methods.

New fields (4)
  • ddt_ids Many2many → stock.picking.package.preparation
    column1='stock_picking_id' column2='stock_picking_package_preparation_id' comodel_name='stock.picking.package.preparation' copy=False relation='stock_picking_pack_prepare_rel' string='TD'
  • ddt_supplier_date Date
    copy=False string='Supplier TD Date'
  • ddt_supplier_number Char
    copy=False string='Supplier TD Number'
  • ddt_type Many2one → stock.ddt.type
    related='picking_type_id.default_location_src_id.type_ddt_id' args: 'stock.ddt.type'
Public methods (5)
  • create(self, values)
    @api.model
  • get_ddt_shipping_partner(self)
  • open_form_current(self)
    @api.multi
  • unlink(self)
    @api.multi
  • write(self, values)
    @api.multi

New fields (2)
  • name Char
    required=True string='Carriage Condition'
  • note Text
    string='Note'
Public methods (0)

No public methods.

New fields (2)
  • name Char
    required=True string='Description of Goods'
  • note Text
    string='Note'
Public methods (0)

No public methods.

New fields (23)
  • carriage_condition_id Many2one → stock.picking.carriage_condition
    string='Carriage Condition' args: 'stock.picking.carriage_condition'
  • carrier_id Many2one → res.partner
    string='Carrier' args: 'res.partner'
  • carrier_tracking_ref Char
    copy=False string='Tracking Reference'
  • check_if_picking_done Boolean
    compute='_compute_check_if_picking_done'
  • ddt_number Char
    copy=False string='TD Number'
  • ddt_show_price Boolean
    string='Show prices on report'
  • ddt_type_id Many2one → stock.ddt.type
    default=_default_ddt_type states={'done': [('readonly', True)], 'cancel': [('readonly', True)]} string='TD Type' args: 'stock.ddt.type'
  • dimension Char
  • display_name Char
    compute='_compute_clean_display_name' string='Name'
  • goods_description_id Many2one → stock.picking.goods_description
    string='Description of Goods' args: 'stock.picking.goods_description'
  • gross_weight Float
    string='Gross Weight'
  • gross_weight_uom_id Many2one → uom.uom
    default=<expr> args: 'uom.uom', 'Gross Weight UoM'
  • invoice_id Many2one → account.invoice
    copy=False readonly=True string='Invoice' args: 'account.invoice'
  • parcels Integer
    args: 'Packages'
  • partner_shipping_id Many2one → res.partner
    string='Shipping Address' args: 'res.partner'
  • show_deadline_date Selection
    string='Show lot deadline on report' args: [('life_date', 'End of Life Date'), ('use_date', 'Best before Date'), ('removal_date', 'Removal Date')]
  • to_be_invoiced Boolean
    help="This depends on 'To be Invoiced' field of the Reason for Transportation of this TD" string='To be Invoiced'
  • transportation_method_id Many2one → stock.picking.transportation_method
    string='Method of Transportation' args: 'stock.picking.transportation_method'
  • transportation_reason_id Many2one → stock.picking.transportation_reason
    string='Reason for Transportation' args: 'stock.picking.transportation_reason'
  • volume Float
    args: 'Volume'
  • volume_uom_id Many2one → uom.uom
    default=<expr> args: 'uom.uom', 'Volume UoM'
  • weight_manual Float
    help='Fill this field with the value you want to be used as weight. Leave empty to let the system to compute it' string='Force Net Weight'
  • weight_manual_uom_id Many2one → uom.uom
    default=<expr> args: 'uom.uom', 'Net Weight UoM'
Public methods (11)
  • action_done(self)
    @api.multi
  • action_invoice_create(self)
    @api.multi
    Create the invoice associated to the TD. :returns: list of created invoices
  • action_put_in_pack(self)
    @api.multi
  • action_send_ddt_mail(self)
    @api.multi
  • check_linked_picking(self, picking)
    @api.model
  • create_td_grouped_invoices(self)
    @api.multi
    Create the invoices, grouped by `group_key` (see `get_td_group_key`). :return: ( dictionary group_key -> invoice record-set, dictionary invoice -> TD record-set, )
  • get_td_group_key(self)
    @api.multi
    Get the grouping key for current TD.
  • on_change_partner(self)
    @api.onchange('partner_id', 'ddt_type_id')
  • other_operations_on_ddt(self, invoice)
    @api.multi
    Once invoices are created with stockable products, we add them all the invoiceable services available in the SO related to the DDTs linked to the invoice. Override this method in order to execute other additional operation on the invoices created from DDT.
  • set_done(self)
    @api.multi
  • unlink(self)
    @api.multi

New fields (4)
  • discount Float
    default=0.0 digits=dp.get_precision('Discount') string='Discount (%)'
  • price_unit Float
    default=0.0 digits=dp.get_precision('Product Price') args: 'Unit Price'
  • sale_line_id Many2one
    readonly=True related='move_id.sale_line_id' store=True string='Sale order line'
  • tax_ids Many2many → account.tax
    string='Taxes' args: 'account.tax'
Public methods (3)
  • allow_invoice_line(self)
    @api.multi
    This method allows or not the invoicing of a specific DDT line. It can be inherited for different purposes, e.g. for proper invoicing of kit.
  • invoice_line_create(self, invoice_id, qty)
    @api.multi
    :param invoice_id: integer :param qty: float quantity to invoice
  • quantity_by_lot(self)
    @api.multi
    Build a dictionary mapping each lot in the current line to its quantity (if the product is tracked with lots)

New fields (2)
  • name Char
    required=True string='Method of Transportation'
  • note Text
    string='Note'
Public methods (0)

No public methods.

New fields (3)
  • name Char
    required=True string='Reason For Transportation'
  • note Text
    string='Note'
  • to_be_invoiced Boolean
    string='To be Invoiced'
Public methods (0)

No public methods.

Loading…

Loading…

Loading…

Loading…