\n" +" Click to create a payment order.\n" +"
\n" +" A payment order is a payment request from your company to " +"pay a\n" +" supplier invoice or a customer refund.\n" +"
\n" +" " +msgstr "" #. module: account_payment #: field:payment.line,currency:0 msgid "Partner Currency" -msgstr "Moneda de la empresa" +msgstr "" #. module: account_payment #: view:payment.order:0 msgid "Set to draft" -msgstr "Cambiar a borrador" +msgstr "" #. module: account_payment #: help:payment.order,mode:0 msgid "Select the Payment Mode to be applied." -msgstr "Seleccione el modo de pago a aplicar." +msgstr "" #. module: account_payment #: view:payment.mode:0 #: view:payment.order:0 msgid "Group By..." -msgstr "Agrupar por..." - -#. module: account_payment -#: model:ir.module.module,description:account_payment.module_meta_information -msgid "" -"\n" -"This module provides :\n" -"* a more efficient way to manage invoice payment.\n" -"* a basic mechanism to easily plug various automated payment.\n" -" " msgstr "" -"\n" -"Este módulo proporciona:\n" -"* Una forma más eficiente para gestionar el pago de las facturas.\n" -"* Un mecanismo básico para conectar fácilmente varios pagos automatizados.\n" -" " #. module: account_payment #: field:payment.order,line_ids:0 msgid "Payment lines" -msgstr "Líneas de pago" +msgstr "" #. module: account_payment #: view:payment.line:0 #: field:payment.line,info_owner:0 #: view:payment.order:0 msgid "Owner Account" -msgstr "Cuenta propietario" - -#. module: account_payment -#: help:payment.order,state:0 -msgid "" -"When an order is placed the state is 'Draft'.\n" -" Once the bank is confirmed the state is set to 'Confirmed'.\n" -" Then the order is paid the state is 'Done'." msgstr "" -"Cuando se hace una orden, el estado es 'Borrador'.\n" -" Una vez se confirma el banco, el estado es \"Confirmada\".\n" -" Cuando la orden se paga, el estado es 'Realizada'." #. module: account_payment #: help:account.invoice,amount_to_pay:0 @@ -86,108 +69,109 @@ msgid "" "The amount which should be paid at the current date\n" "minus the amount which is already in payment order" msgstr "" -"El importe que se debería haber pagado en la fecha actual\n" -"menos el importe que ya está en la orden de pago" #. module: account_payment +#: field:payment.line,company_id:0 #: field:payment.mode,company_id:0 +#: field:payment.order,company_id:0 msgid "Company" -msgstr "Compañía" +msgstr "" #. module: account_payment -#: field:payment.order,date_prefered:0 -msgid "Preferred date" -msgstr "Fecha preferida" +#: model:res.groups,name:account_payment.group_account_payment +msgid "Accounting / Payments" +msgstr "" #. module: account_payment #: selection:payment.line,state:0 msgid "Free" -msgstr "Libre" +msgstr "" #. module: account_payment +#: view:payment.order.create:0 #: field:payment.order.create,entries:0 msgid "Entries" -msgstr "Asientos" +msgstr "" #. module: account_payment #: report:payment.order:0 msgid "Used Account" -msgstr "Cuenta utilizada" +msgstr "" #. module: account_payment #: field:payment.line,ml_maturity_date:0 #: field:payment.order.create,duedate:0 msgid "Due Date" -msgstr "Fecha de vencimiento" - -#. module: account_payment -#: constraint:account.move.line:0 -msgid "You can not create move line on closed account." -msgstr "No puede crear una línea de movimiento en una cuenta cerrada." - -#. module: account_payment -#: view:account.move.line:0 -msgid "Account Entry Line" -msgstr "Línea del asiento contable" +msgstr "" #. module: account_payment #: view:payment.order.create:0 msgid "_Add to payment order" -msgstr "_Añadir a la orden de pago" +msgstr "" #. module: account_payment #: model:ir.actions.act_window,name:account_payment.action_account_payment_populate_statement #: model:ir.actions.act_window,name:account_payment.action_account_populate_statement_confirm msgid "Payment Populate statement" -msgstr "Extracto generar pago" +msgstr "" + +#. module: account_payment +#: code:addons/account_payment/account_invoice.py:43 +#, python-format +msgid "" +"You cannot cancel an invoice which has already been imported in a payment " +"order. Remove it from the following payment order : %s." +msgstr "" + +#. module: account_payment +#: code:addons/account_payment/account_invoice.py:43 +#: code:addons/account_payment/account_move_line.py:110 +#, python-format +msgid "Error!" +msgstr "" #. module: account_payment #: report:payment.order:0 #: view:payment.order:0 msgid "Amount" -msgstr "Importe" - -#. module: account_payment -#: sql_constraint:account.move.line:0 -msgid "Wrong credit or debit value in accounting entry !" -msgstr "¡Valor haber o debe erróneo en el asiento contable!" +msgstr "" #. module: account_payment #: view:payment.order:0 msgid "Total in Company Currency" -msgstr "Total en moneda de la compañía" +msgstr "" #. module: account_payment #: selection:payment.order,state:0 msgid "Cancelled" -msgstr "Cancelado" +msgstr "" #. module: account_payment #: model:ir.actions.act_window,name:account_payment.action_payment_order_tree_new msgid "New Payment Order" -msgstr "Nueva orden de pago" +msgstr "" #. module: account_payment #: report:payment.order:0 #: field:payment.order,reference:0 msgid "Reference" -msgstr "Referencia" +msgstr "" #. module: account_payment #: sql_constraint:payment.line:0 msgid "The payment line name must be unique!" -msgstr "¡El nombre de la línea de pago debe ser única!" +msgstr "" #. module: account_payment #: model:ir.actions.act_window,name:account_payment.action_payment_order_tree #: model:ir.ui.menu,name:account_payment.menu_action_payment_order_form msgid "Payment Orders" -msgstr "Órdenes de pago" +msgstr "" #. module: account_payment #: selection:payment.order,date_prefered:0 msgid "Directly" -msgstr "Directamente" +msgstr "" #. module: account_payment #: model:ir.actions.act_window,name:account_payment.action_payment_line_form @@ -195,45 +179,52 @@ msgstr "Directamente" #: view:payment.line:0 #: view:payment.order:0 msgid "Payment Line" -msgstr "Línea de pago" +msgstr "" #. module: account_payment #: view:payment.line:0 msgid "Amount Total" -msgstr "Importe total" +msgstr "" + +#. module: account_payment +#: help:payment.order,state:0 +msgid "" +"When an order is placed the status is 'Draft'.\n" +" Once the bank is confirmed the status is set to 'Confirmed'.\n" +" Then the order is paid the status is 'Done'." +msgstr "" #. module: account_payment #: view:payment.order:0 #: selection:payment.order,state:0 msgid "Confirmed" -msgstr "Confirmada" +msgstr "" #. module: account_payment #: help:payment.line,ml_date_created:0 msgid "Invoice Effective Date" -msgstr "Fecha vencimiento factura" +msgstr "" #. module: account_payment #: report:payment.order:0 msgid "Execution Type" -msgstr "Tipo ejecución" +msgstr "" #. module: account_payment #: selection:payment.line,state:0 msgid "Structured" -msgstr "Estructurado" +msgstr "" #. module: account_payment -#: view:payment.order:0 -#: field:payment.order,state:0 -msgid "State" -msgstr "Estado" +#: view:account.bank.statement:0 +msgid "Import Payment Lines" +msgstr "" #. module: account_payment #: view:payment.line:0 #: view:payment.order:0 msgid "Transaction Information" -msgstr "Información de transacción" +msgstr "" #. module: account_payment #: model:ir.actions.act_window,name:account_payment.action_payment_mode_form @@ -241,18 +232,19 @@ msgstr "Información de transacción" #: model:ir.ui.menu,name:account_payment.menu_action_payment_mode_form #: view:payment.mode:0 #: view:payment.order:0 +#: field:payment.order,mode:0 msgid "Payment Mode" -msgstr "Modo de pago" +msgstr "" #. module: account_payment #: field:payment.line,ml_date_created:0 msgid "Effective Date" -msgstr "Fecha vencimiento" +msgstr "" #. module: account_payment #: field:payment.line,ml_inv_ref:0 msgid "Invoice Ref." -msgstr "Ref. factura" +msgstr "" #. module: account_payment #: help:payment.order,date_prefered:0 @@ -261,119 +253,99 @@ msgid "" "by you.'Directly' stands for the direct execution.'Due date' stands for the " "scheduled date of execution." msgstr "" -"Seleccione una opción para la orden de pago: 'Fecha fija' para una fecha " -"especificada por usted. 'Directamente' para la ejecución directa. 'Fecha " -"vencimiento' para la fecha programada de ejecución." #. module: account_payment -#: code:addons/account_payment/account_move_line.py:110 -#, python-format -msgid "Error !" -msgstr "¡Error!" - -#. module: account_payment -#: view:account.move.line:0 -msgid "Total debit" -msgstr "Total debe" - -#. module: account_payment -#: field:payment.order,date_done:0 -msgid "Execution date" -msgstr "Fecha ejecución" +#: field:payment.order,date_created:0 +msgid "Creation Date" +msgstr "" #. module: account_payment #: help:payment.mode,journal:0 msgid "Bank or Cash Journal for the Payment Mode" -msgstr "Diario de banco o caja para el modo de pago." +msgstr "" #. module: account_payment #: selection:payment.order,date_prefered:0 msgid "Fixed date" -msgstr "Fecha fija" +msgstr "" #. module: account_payment #: field:payment.line,info_partner:0 #: view:payment.order:0 msgid "Destination Account" -msgstr "Cuenta de destino" +msgstr "" #. module: account_payment #: view:payment.line:0 msgid "Desitination Account" -msgstr "Cuenta de destino" +msgstr "" #. module: account_payment #: view:payment.order:0 msgid "Search Payment Orders" -msgstr "Buscar órdenes de pago" - -#. module: account_payment -#: constraint:account.move.line:0 -msgid "" -"You can not create move line on receivable/payable account without partner" msgstr "" -"No puede crear una línea de movimiento en una cuenta a cobrar/a pagar sin " -"una empresa." #. module: account_payment #: field:payment.line,create_date:0 msgid "Created" -msgstr "Creado" +msgstr "" #. module: account_payment #: view:payment.order:0 msgid "Select Invoices to Pay" -msgstr "Seleccionar facturas a pagar" +msgstr "" #. module: account_payment #: view:payment.line:0 msgid "Currency Amount Total" -msgstr "Importe total monetario" +msgstr "" #. module: account_payment #: view:payment.order:0 msgid "Make Payments" -msgstr "Realizar pagos" +msgstr "" #. module: account_payment #: field:payment.line,state:0 msgid "Communication Type" -msgstr "Tipo de comunicación" +msgstr "" #. module: account_payment -#: model:ir.module.module,shortdesc:account_payment.module_meta_information -msgid "Payment Management" -msgstr "Gestión de pagos" +#: field:payment.line,partner_id:0 +#: field:payment.mode,partner_id:0 +#: report:payment.order:0 +msgid "Partner" +msgstr "" #. module: account_payment #: field:payment.line,bank_statement_line_id:0 msgid "Bank statement line" -msgstr "Línea extracto bancario" +msgstr "" #. module: account_payment #: selection:payment.order,date_prefered:0 msgid "Due date" -msgstr "Fecha vencimiento" +msgstr "" #. module: account_payment #: field:account.invoice,amount_to_pay:0 msgid "Amount to be paid" -msgstr "Importe a pagar" +msgstr "" #. module: account_payment #: report:payment.order:0 msgid "Currency" -msgstr "Moneda" +msgstr "" #. module: account_payment #: view:account.payment.make.payment:0 msgid "Yes" -msgstr "Sí" +msgstr "" #. module: account_payment #: help:payment.line,info_owner:0 msgid "Address of the Main Partner" -msgstr "Dirección de la empresa principal" +msgstr "" #. module: account_payment #: help:payment.line,date:0 @@ -381,92 +353,79 @@ msgid "" "If no payment date is specified, the bank will treat this payment line " "directly" msgstr "" -"Si no se indica fecha de pago, el banco procesará esta línea de pago " -"directamente" #. module: account_payment #: model:ir.model,name:account_payment.model_account_payment_populate_statement msgid "Account Payment Populate Statement" -msgstr "Contabilidad extracto generar pago" +msgstr "" + +#. module: account_payment +#: code:addons/account_payment/account_move_line.py:110 +#, python-format +msgid "There is no partner defined on the entry line." +msgstr "" #. module: account_payment #: help:payment.mode,name:0 msgid "Mode of Payment" -msgstr "Modo de pago" +msgstr "" #. module: account_payment #: report:payment.order:0 msgid "Value Date" -msgstr "Fecha valor" +msgstr "" #. module: account_payment #: report:payment.order:0 msgid "Payment Type" -msgstr "Tipo de Pago" +msgstr "" #. module: account_payment #: help:payment.line,amount_currency:0 msgid "Payment amount in the partner currency" -msgstr "Importe pagado en la moneda de la empresa" +msgstr "" #. module: account_payment #: view:payment.order:0 #: selection:payment.order,state:0 msgid "Draft" -msgstr "Borrador" +msgstr "" + +#. module: account_payment +#: view:payment.order:0 +#: field:payment.order,state:0 +msgid "Status" +msgstr "" #. module: account_payment #: help:payment.line,communication2:0 msgid "The successor message of Communication." -msgstr "El mensaje de pago realizado a comunicar." - -#. module: account_payment -#: code:addons/account_payment/account_move_line.py:110 -#, python-format -msgid "No partner defined on entry line" -msgstr "No se ha definido la empresa en la línea de entrada" +msgstr "" #. module: account_payment #: help:payment.line,info_partner:0 msgid "Address of the Ordering Customer." -msgstr "Dirección del cliente que ordena." +msgstr "" #. module: account_payment #: view:account.payment.populate.statement:0 msgid "Populate Statement:" -msgstr "Generar extracto:" - -#. module: account_payment -#: view:account.move.line:0 -msgid "Total credit" -msgstr "Total haber" +msgstr "" #. module: account_payment #: help:payment.order,date_scheduled:0 msgid "Select a date if you have chosen Preferred Date to be fixed." msgstr "" -"Seleccione una fecha si ha seleccionado que la fecha preferida sea fija." - -#. module: account_payment -#: field:payment.order,user_id:0 -msgid "User" -msgstr "Usuario" #. module: account_payment #: field:account.payment.populate.statement,lines:0 -#: model:ir.actions.act_window,name:account_payment.act_account_invoice_2_payment_line msgid "Payment Lines" -msgstr "Líneas de pago" +msgstr "" #. module: account_payment #: model:ir.model,name:account_payment.model_account_move_line msgid "Journal Items" -msgstr "Apuntes contables" - -#. module: account_payment -#: constraint:account.move.line:0 -msgid "Company must be same for its related account and period." -msgstr "La compañía debe ser la misma para la cuenta y periodo relacionados." +msgstr "" #. module: account_payment #: help:payment.line,move_line_id:0 @@ -474,202 +433,192 @@ msgid "" "This Entry Line will be referred for the information of the ordering " "customer." msgstr "" -"Esta línea se usará como referencia para la información del cliente que " -"ordena." #. module: account_payment #: view:payment.order.create:0 msgid "Search" -msgstr "Buscar" +msgstr "" #. module: account_payment -#: model:ir.actions.report.xml,name:account_payment.payment_order1 -#: model:ir.model,name:account_payment.model_payment_order -msgid "Payment Order" -msgstr "Orden de pago" +#: field:payment.order,user_id:0 +msgid "Responsible" +msgstr "" #. module: account_payment #: field:payment.line,date:0 msgid "Payment Date" -msgstr "Fecha de pago" +msgstr "" #. module: account_payment #: report:payment.order:0 msgid "Total:" -msgstr "Total:" +msgstr "" #. module: account_payment -#: field:payment.order,date_created:0 -msgid "Creation date" -msgstr "Fecha de creación" +#: field:payment.order,date_done:0 +msgid "Execution Date" +msgstr "" #. module: account_payment #: view:account.payment.populate.statement:0 msgid "ADD" -msgstr "Añadir" +msgstr "" #. module: account_payment -#: view:account.bank.statement:0 -msgid "Import payment lines" -msgstr "Importar líneas de pago" +#: model:ir.actions.act_window,name:account_payment.action_create_payment_order +msgid "Populate Payment" +msgstr "" #. module: account_payment #: field:account.move.line,amount_to_pay:0 msgid "Amount to pay" -msgstr "Importe a pagar" +msgstr "" #. module: account_payment #: field:payment.line,amount:0 msgid "Amount in Company Currency" -msgstr "Importe en la moneda de la compañía" +msgstr "" #. module: account_payment #: help:payment.line,partner_id:0 msgid "The Ordering Customer" -msgstr "El cliente que ordena" +msgstr "" #. module: account_payment #: model:ir.model,name:account_payment.model_account_payment_make_payment msgid "Account make payment" -msgstr "Contabilidad realizar pago" +msgstr "" #. module: account_payment #: report:payment.order:0 msgid "Invoice Ref" -msgstr "Ref. factura" +msgstr "" #. module: account_payment #: field:payment.line,name:0 msgid "Your Reference" -msgstr "Su referencia" - -#. module: account_payment -#: field:payment.order,mode:0 -msgid "Payment mode" -msgstr "Modo de pago" +msgstr "" #. module: account_payment #: view:payment.order:0 msgid "Payment order" -msgstr "Órdenes de pago" +msgstr "" #. module: account_payment #: view:payment.line:0 #: view:payment.order:0 msgid "General Information" -msgstr "Información General" +msgstr "" #. module: account_payment #: view:payment.order:0 #: selection:payment.order,state:0 msgid "Done" -msgstr "Realizado" +msgstr "" #. module: account_payment #: model:ir.model,name:account_payment.model_account_invoice msgid "Invoice" -msgstr "Factura" +msgstr "" #. module: account_payment #: field:payment.line,communication:0 msgid "Communication" -msgstr "Comunicación" +msgstr "" #. module: account_payment #: view:account.payment.make.payment:0 #: view:account.payment.populate.statement:0 -#: view:payment.order:0 #: view:payment.order.create:0 msgid "Cancel" -msgstr "Cancelar" +msgstr "" + +#. module: account_payment +#: field:payment.line,bank_id:0 +msgid "Destination Bank Account" +msgstr "" #. module: account_payment #: view:payment.line:0 #: view:payment.order:0 msgid "Information" -msgstr "Información" +msgstr "" #. module: account_payment -#: model:ir.actions.act_window,help:account_payment.action_payment_order_tree -msgid "" -"A payment order is a payment request from your company to pay a supplier " -"invoice or a customer credit note. Here you can register all payment orders " -"that should be done, keep track of all payment orders and mention the " -"invoice reference and the partner the payment should be done for." +#: model:ir.actions.report.xml,name:account_payment.payment_order1 +#: model:ir.model,name:account_payment.model_payment_order +#: view:payment.order:0 +msgid "Payment Order" msgstr "" -"Una órden de pago es una petición de pago que realiza su compañía para pagar " -"una factura de proveedor o un apunte de crédito de un cliente. Aquí puede " -"registrar todas las órdenes de pago pendientes y hacer seguimiento de las " -"órdenes e indicar la referencia de factura y la entidad a la cual pagar." #. module: account_payment #: help:payment.line,amount:0 msgid "Payment amount in the company currency" -msgstr "Importe pagado en la moneda de la compañía" +msgstr "" #. module: account_payment #: view:payment.order.create:0 msgid "Search Payment lines" -msgstr "Buscar líneas de pago" +msgstr "" #. module: account_payment #: field:payment.line,amount_currency:0 msgid "Amount in Partner Currency" -msgstr "Importe en la moneda de la empresa" +msgstr "" #. module: account_payment #: field:payment.line,communication2:0 msgid "Communication 2" -msgstr "Comunicación 2" +msgstr "" #. module: account_payment -#: field:payment.line,bank_id:0 -msgid "Destination Bank account" -msgstr "Cuenta bancaria destino" +#: field:payment.order,date_scheduled:0 +msgid "Scheduled Date" +msgstr "" #. module: account_payment #: view:account.payment.make.payment:0 msgid "Are you sure you want to make payment?" -msgstr "¿Está seguro que quiere realizar el pago?" +msgstr "" #. module: account_payment #: view:payment.mode:0 #: field:payment.mode,journal:0 msgid "Journal" -msgstr "Diario" +msgstr "" #. module: account_payment #: field:payment.mode,bank_id:0 msgid "Bank account" -msgstr "Cuenta bancaria" +msgstr "" #. module: account_payment #: view:payment.order:0 msgid "Confirm Payments" -msgstr "Confirmar pagos" +msgstr "" #. module: account_payment #: field:payment.line,company_currency:0 #: report:payment.order:0 msgid "Company Currency" -msgstr "Moneda de la compañía" +msgstr "" #. module: account_payment #: model:ir.ui.menu,name:account_payment.menu_main_payment #: view:payment.line:0 #: view:payment.order:0 msgid "Payment" -msgstr "Pago" +msgstr "" #. module: account_payment #: report:payment.order:0 msgid "Payment Order / Payment" -msgstr "Orden de pago / Pago" +msgstr "" #. module: account_payment #: field:payment.line,move_line_id:0 msgid "Entry line" -msgstr "Línea del asiento" +msgstr "" #. module: account_payment #: help:payment.line,communication:0 @@ -677,134 +626,57 @@ msgid "" "Used as the message between ordering customer and current company. Depicts " "'What do you want to say to the recipient about this order ?'" msgstr "" -"Se utiliza como mensaje entre el cliente que hace el pedido y la compañía " -"actual. Describe '¿Qué quiere decir al receptor sobre este pedido?'" #. module: account_payment #: field:payment.mode,name:0 msgid "Name" -msgstr "Nombre" +msgstr "" #. module: account_payment #: report:payment.order:0 msgid "Bank Account" -msgstr "Cuenta bancaria" +msgstr "" #. module: account_payment #: view:payment.line:0 #: view:payment.order:0 msgid "Entry Information" -msgstr "Información del asiento" +msgstr "" #. module: account_payment #: model:ir.model,name:account_payment.model_payment_order_create msgid "payment.order.create" -msgstr "pago.orden.crear" +msgstr "" #. module: account_payment #: field:payment.line,order_id:0 msgid "Order" -msgstr "Orden" +msgstr "" #. module: account_payment #: field:payment.order,total:0 msgid "Total" -msgstr "Total" +msgstr "" #. module: account_payment #: view:account.payment.make.payment:0 #: model:ir.actions.act_window,name:account_payment.action_account_payment_make_payment msgid "Make Payment" -msgstr "Realizar pago" +msgstr "" #. module: account_payment -#: field:payment.line,partner_id:0 -#: report:payment.order:0 -msgid "Partner" -msgstr "Empresa" +#: field:payment.order,date_prefered:0 +msgid "Preferred Date" +msgstr "" #. module: account_payment -#: model:ir.actions.act_window,name:account_payment.action_create_payment_order -msgid "Populate Payment" -msgstr "Generar pago" +#: view:account.payment.make.payment:0 +#: view:account.payment.populate.statement:0 +#: view:payment.order.create:0 +msgid "or" +msgstr "" #. module: account_payment #: help:payment.mode,bank_id:0 msgid "Bank Account for the Payment Mode" -msgstr "Cuenta bancaria para el modo de pago" - -#. module: account_payment -#: constraint:account.move.line:0 -msgid "You can not create move line on view account." -msgstr "No puede crear una línea de movimiento en una cuenta de tipo vista." - -#~ msgid "Execution date:" -#~ msgstr "Fecha de ejecución:" - -#~ msgid "Suitable bank types" -#~ msgstr "Tipos de banco adecuados" - -#~ msgid "Invalid XML for View Architecture!" -#~ msgstr "¡XML inválido para la definición de la vista!" - -#~ msgid "_Cancel" -#~ msgstr "_Cancelar" - -#~ msgid "Date" -#~ msgstr "Fecha" - -#~ msgid "Reference:" -#~ msgstr "Referencia:" - -#~ msgid "Maturity Date" -#~ msgstr "Fecha vencimiento" - -#~ msgid "Specify the Code for Payment Type" -#~ msgstr "Indique el código para el tipo de pago" - -#~ msgid "Code" -#~ msgstr "Código" - -#~ msgid "" -#~ "The Object name must start with x_ and not contain any special character !" -#~ msgstr "" -#~ "¡El nombre del objeto debe empezar con x_ y no contener ningún carácter " -#~ "especial!" - -#~ msgid "Pay" -#~ msgstr "Pagar" - -#~ msgid "Draft Payment Order" -#~ msgstr "Orden de pago borrador" - -#~ msgid "Cash Journal for the Payment Mode" -#~ msgstr "Diario de caja para el modo de pago" - -#~ msgid "_Search" -#~ msgstr "_Buscar" - -#, python-format -#~ msgid "Partner '+ line.partner_id.name+ ' has no bank account defined" -#~ msgstr "" -#~ "Empresa '+ line.partner_id.name+ ' no tiene una cuenta bancaria definida" - -#~ msgid "Payment Orders to Validate" -#~ msgstr "Órdenes de pago a validar" - -#~ msgid "Payment type" -#~ msgstr "Tipo de pago" - -#~ msgid "_Add" -#~ msgstr "_Añadir" - -#~ msgid "Select the Payment Type for the Payment Mode." -#~ msgstr "Seleccione el tipo de pago para el modo de pago." - -#~ msgid "Invalid model name in the action definition." -#~ msgstr "Nombre de modelo no válido en la definición de acción." - -#~ msgid "Populate payment" -#~ msgstr "Rellenar la orden" - -#~ msgid "Populate Statement with Payment lines" -#~ msgstr "Llenar un extracto con líneas de pago" +msgstr "" diff --git a/addons/account_voucher/account_voucher.py b/addons/account_voucher/account_voucher.py index d6ad6efdd90..c9516b6135f 100644 --- a/addons/account_voucher/account_voucher.py +++ b/addons/account_voucher/account_voucher.py @@ -217,7 +217,7 @@ class account_voucher(osv.osv): if context.get('type', 'sale') in ('purchase', 'payment'): nodes = doc.xpath("//field[@name='partner_id']") for node in nodes: - node.set('context', "{'search_default_supplier': 1}") + node.set('context', "{'default_customer': 0, 'search_default_supplier': 1, 'default_supplier': 1}") if context.get('invoice_type','') in ('in_invoice', 'in_refund'): node.set('string', _("Supplier")) res['arch'] = etree.tostring(doc) @@ -1329,7 +1329,7 @@ class account_voucher(osv.osv): 'date': voucher.date, 'credit': diff > 0 and diff or 0.0, 'debit': diff < 0 and -diff or 0.0, - 'amount_currency': company_currency <> current_currency and (sign * -1 * voucher.writeoff_amount) or False, + 'amount_currency': company_currency <> current_currency and (sign * -1 * voucher.writeoff_amount) or 0.0, 'currency_id': company_currency <> current_currency and current_currency or False, 'analytic_account_id': voucher.analytic_id and voucher.analytic_id.id or False, } diff --git a/addons/analytic/analytic.py b/addons/analytic/analytic.py index 14c8f712e81..4f1de653ae1 100644 --- a/addons/analytic/analytic.py +++ b/addons/analytic/analytic.py @@ -194,7 +194,7 @@ class account_analytic_account(osv.osv): 'user_id': fields.many2one('res.users', 'Project Manager', track_visibility='onchange'), 'manager_id': fields.many2one('res.users', 'Account Manager', track_visibility='onchange'), 'date_start': fields.date('Start Date'), - 'date': fields.date('End Date', select=True, track_visibility='onchange'), + 'date': fields.date('Expiration Date', select=True, track_visibility='onchange'), 'company_id': fields.many2one('res.company', 'Company', required=False), #not required because we want to allow different companies to use the same chart of account, except for leaf accounts. 'state': fields.selection([('template', 'Template'),('draft','New'),('open','In Progress'),('pending','To Renew'),('close','Closed'),('cancelled', 'Cancelled')], 'Status', required=True, track_visibility='onchange'), 'currency_id': fields.function(_currency, fnct_inv=_set_company_currency, #the currency_id field is readonly except if it's a view account and if there is no company diff --git a/addons/base_calendar/base_calendar.py b/addons/base_calendar/base_calendar.py deleted file mode 100644 index 769d4e2b358..00000000000 --- a/addons/base_calendar/base_calendar.py +++ /dev/null @@ -1,1765 +0,0 @@ -# -*- coding: utf-8 -*- -############################################################################## -# -# OpenERP, Open Source Management Solution -# Copyright (C) 2004-2010 Tiny SPRL (Hello, | -
You are invited for %(company)s Event. | -
Below are the details of event. Hours and dates expressed in %(timezone)s time. | -
- %(name)s- |
- |||||||||||||||||||||
-
|
-
From: | -
%(user)s | -
-------------------------- | -
%(sign)s | -
-Event: %s -Event Date: %s -Description: %s - -From: - %s - ----- -%s --""" % (alarm.name, alarm.trigger_date, alarm.description, \ - alarm.user_id.name, alarm.user_id.signature) - mail_to = alarm.user_id.email - for att in alarm.attendee_ids: - mail_to = mail_to + " " + att.user_id.email - if mail_to: - vals = { - 'state': 'outgoing', - 'subject': sub, - 'body_html': body, - 'email_to': mail_to, - 'email_from': tools.config.get('email_from', mail_to), - } - self.pool.get('mail.mail').create(cr, uid, vals, context=context) - if next_trigger_date: - update_vals.update({'trigger_date': next_trigger_date}) - else: - update_vals.update({'state': 'done'}) - self.write(cr, uid, [alarm.id], update_vals) - return True - - - -class calendar_event(osv.osv): - _name = "calendar.event" - _description = "Calendar Event" - __attribute__ = {} - - def _tz_get(self, cr, uid, context=None): - return [(x.lower(), x) for x in pytz.all_timezones] - - def onchange_dates(self, cr, uid, ids, start_date, duration=False, end_date=False, allday=False, context=None): - """Returns duration and/or end date based on values passed - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user's ID for security checks, - @param ids: List of calendar event's IDs. - @param start_date: Starting date - @param duration: Duration between start date and end date - @param end_date: Ending Datee - @param context: A standard dictionary for contextual values - """ - if context is None: - context = {} - - value = {} - if not start_date: - return value - if not end_date and not duration: - duration = 1.00 - value['duration'] = duration - - start = datetime.strptime(start_date, "%Y-%m-%d %H:%M:%S") - if allday: # For all day event - duration = 24.0 - value['duration'] = duration - # change start_date's time to 00:00:00 in the user's timezone - user = self.pool.get('res.users').browse(cr, uid, uid) - tz = pytz.timezone(user.tz) if user.tz else pytz.utc - start = pytz.utc.localize(start).astimezone(tz) # convert start in user's timezone - start = start.replace(hour=0, minute=0, second=0) # change start's time to 00:00:00 - start = start.astimezone(pytz.utc) # convert start back to utc - start_date = start.strftime("%Y-%m-%d %H:%M:%S") - value['date'] = start_date - - if end_date and not duration: - end = datetime.strptime(end_date, "%Y-%m-%d %H:%M:%S") - diff = end - start - duration = float(diff.days)* 24 + (float(diff.seconds) / 3600) - value['duration'] = round(duration, 2) - elif not end_date: - end = start + timedelta(hours=duration) - value['date_deadline'] = end.strftime("%Y-%m-%d %H:%M:%S") - elif end_date and duration and not allday: - # we have both, keep them synchronized: - # set duration based on end_date (arbitrary decision: this avoid - # getting dates like 06:31:48 instead of 06:32:00) - end = datetime.strptime(end_date, "%Y-%m-%d %H:%M:%S") - diff = end - start - duration = float(diff.days)* 24 + (float(diff.seconds) / 3600) - value['duration'] = round(duration, 2) - - return {'value': value} - - def unlink_events(self, cr, uid, ids, context=None): - """ - This function deletes event which are linked with the event with recurrent_id - (Removes the events which refers to the same UID value) - """ - if context is None: - context = {} - for event_id in ids: - cr.execute("select id from %s where recurrent_id=%%s" % (self._table), (event_id,)) - r_ids = map(lambda x: x[0], cr.fetchall()) - self.unlink(cr, uid, r_ids, context=context) - return True - - def _get_rulestring(self, cr, uid, ids, name, arg, context=None): - """ - Gets Recurrence rule string according to value type RECUR of iCalendar from the values given. - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param id: List of calendar event's ids. - @param context: A standard dictionary for contextual values - @return: dictionary of rrule value. - """ - - result = {} - if not isinstance(ids, list): - ids = [ids] - - for id in ids: - #read these fields as SUPERUSER because if the record is private a normal search could return False and raise an error - data = self.read(cr, SUPERUSER_ID, id, ['interval', 'count'], context=context) - if data.get('interval', 0) < 0: - raise osv.except_osv(_('Warning!'), _('Interval cannot be negative.')) - if data.get('count', 0) <= 0: - raise osv.except_osv(_('Warning!'), _('Count cannot be negative or 0.')) - data = self.read(cr, uid, id, ['id','byday','recurrency', 'month_list','end_date', 'rrule_type', 'select1', 'interval', 'count', 'end_type', 'mo', 'tu', 'we', 'th', 'fr', 'sa', 'su', 'exrule', 'day', 'week_list' ], context=context) - event = data['id'] - if data['recurrency']: - result[event] = self.compute_rule_string(data) - else: - result[event] = "" - return result - - def _rrule_write(self, obj, cr, uid, ids, field_name, field_value, args, context=None): - data = self._get_empty_rrule_data() - if field_value: - data['recurrency'] = True - for event in self.browse(cr, uid, ids, context=context): - rdate = rule_date or event.date - update_data = self._parse_rrule(field_value, dict(data), rdate) - data.update(update_data) - super(calendar_event, obj).write(cr, uid, ids, data, context=context) - return True - - _columns = { - 'id': fields.integer('ID', readonly=True), - 'sequence': fields.integer('Sequence'), - 'name': fields.char('Description', size=64, required=False, states={'done': [('readonly', True)]}), - 'date': fields.datetime('Date', states={'done': [('readonly', True)]}, required=True,), - 'date_deadline': fields.datetime('End Date', states={'done': [('readonly', True)]}, required=True,), - 'create_date': fields.datetime('Created', readonly=True), - 'duration': fields.float('Duration', states={'done': [('readonly', True)]}), - 'description': fields.text('Description', states={'done': [('readonly', True)]}), - 'class': fields.selection([('public', 'Public'), ('private', 'Private'), \ - ('confidential', 'Public for Employees')], 'Privacy', states={'done': [('readonly', True)]}), - 'location': fields.char('Location', size=264, help="Location of Event", states={'done': [('readonly', True)]}), - 'show_as': fields.selection([('free', 'Free'), ('busy', 'Busy')], \ - 'Show Time as', states={'done': [('readonly', True)]}), - 'base_calendar_url': fields.char('Caldav URL', size=264), - 'state': fields.selection([ - ('tentative', 'Uncertain'), - ('cancelled', 'Cancelled'), - ('confirmed', 'Confirmed'), - ], 'Status', readonly=True), - 'exdate': fields.text('Exception Date/Times', help="This property \ -defines the list of date/time exceptions for a recurring calendar component."), - 'exrule': fields.char('Exception Rule', size=352, help="Defines a \ -rule or repeating pattern of time to exclude from the recurring rule."), - 'rrule': fields.function(_get_rulestring, type='char', size=124, \ - fnct_inv=_rrule_write, store=True, string='Recurrent Rule'), - 'rrule_type': fields.selection([ - ('daily', 'Day(s)'), - ('weekly', 'Week(s)'), - ('monthly', 'Month(s)'), - ('yearly', 'Year(s)') - ], 'Recurrency', states={'done': [('readonly', True)]}, - help="Let the event automatically repeat at that interval"), - 'alarm_id': fields.many2one('res.alarm', 'Reminder', states={'done': [('readonly', True)]}, - help="Set an alarm at this time, before the event occurs" ), - 'base_calendar_alarm_id': fields.many2one('calendar.alarm', 'Alarm'), - 'recurrent_id': fields.integer('Recurrent ID'), - 'recurrent_id_date': fields.datetime('Recurrent ID date'), - 'vtimezone': fields.selection(_tz_get, size=64, string='Timezone'), - 'user_id': fields.many2one('res.users', 'Responsible', states={'done': [('readonly', True)]}), - 'organizer': fields.char("Organizer (deprecated)", size=256, states={'done': [('readonly', True)]}, - deprecated='Will be removed with OpenERP v8; use organizer_id field instead'), # Map with organizer attribute of VEvent. - 'organizer_id': fields.many2one('res.users', 'Organizer', states={'done': [('readonly', True)]}), - 'end_type' : fields.selection([('count', 'Number of repetitions'), ('end_date','End date')], 'Recurrence Termination'), - 'interval': fields.integer('Repeat Every', help="Repeat every (Days/Week/Month/Year)"), - 'count': fields.integer('Repeat', help="Repeat x times"), - 'mo': fields.boolean('Mon'), - 'tu': fields.boolean('Tue'), - 'we': fields.boolean('Wed'), - 'th': fields.boolean('Thu'), - 'fr': fields.boolean('Fri'), - 'sa': fields.boolean('Sat'), - 'su': fields.boolean('Sun'), - 'select1': fields.selection([('date', 'Date of month'), - ('day', 'Day of month')], 'Option'), - 'day': fields.integer('Date of month'), - 'week_list': fields.selection([ - ('MO', 'Monday'), - ('TU', 'Tuesday'), - ('WE', 'Wednesday'), - ('TH', 'Thursday'), - ('FR', 'Friday'), - ('SA', 'Saturday'), - ('SU', 'Sunday')], 'Weekday'), - 'byday': fields.selection([ - ('1', 'First'), - ('2', 'Second'), - ('3', 'Third'), - ('4', 'Fourth'), - ('5', 'Fifth'), - ('-1', 'Last')], 'By day'), - 'month_list': fields.selection(months.items(), 'Month'), - 'end_date': fields.date('Repeat Until'), - 'attendee_ids': fields.many2many('calendar.attendee', 'event_attendee_rel', \ - 'event_id', 'attendee_id', 'Attendees'), - 'allday': fields.boolean('All Day', states={'done': [('readonly', True)]}), - 'active': fields.boolean('Active', help="If the active field is set to \ - true, it will allow you to hide the event alarm information without removing it."), - 'recurrency': fields.boolean('Recurrent', help="Recurrent Meeting"), - 'partner_ids': fields.many2many('res.partner', string='Attendees', states={'done': [('readonly', True)]}), - } - - def create_attendees(self, cr, uid, ids, context): - att_obj = self.pool.get('calendar.attendee') - user_obj = self.pool.get('res.users') - current_user = user_obj.browse(cr, uid, uid, context=context) - for event in self.browse(cr, uid, ids, context): - attendees = {} - for att in event.attendee_ids: - attendees[att.partner_id.id] = True - new_attendees = [] - mail_to = "" - for partner in event.partner_ids: - if partner.id in attendees: - continue - local_context = context.copy() - local_context.pop('default_state', None) - att_id = self.pool.get('calendar.attendee').create(cr, uid, { - 'partner_id': partner.id, - 'user_id': partner.user_ids and partner.user_ids[0].id or False, - 'ref': self._name+','+str(event.id), - 'email': partner.email - }, context=local_context) - if partner.email: - mail_to = mail_to + " " + partner.email - self.write(cr, uid, [event.id], { - 'attendee_ids': [(4, att_id)] - }, context=context) - new_attendees.append(att_id) - - if mail_to and current_user.email: - att_obj._send_mail(cr, uid, new_attendees, mail_to, - email_from = current_user.email, context=context) - return True - - def default_organizer(self, cr, uid, context=None): - """ - .. deprecated:: 8.0 - Use organizer_id field and its default value instead. - """ - user_pool = self.pool.get('res.users') - user = user_pool.browse(cr, uid, uid, context=context) - res = user.name - if user.email: - res += " <%s>" %(user.email) - return res - - _defaults = { - 'end_type': 'count', - 'count': 1, - 'rrule_type': False, - 'state': 'tentative', - 'class': 'public', - 'show_as': 'busy', - 'select1': 'date', - 'interval': 1, - 'active': 1, - 'user_id': lambda self, cr, uid, ctx: uid, - } - - def _check_closing_date(self, cr, uid, ids, context=None): - for event in self.browse(cr, uid, ids, context=context): - if event.date_deadline < event.date: - return False - return True - - _constraints = [ - (_check_closing_date, 'Error ! End date cannot be set before start date.', ['date_deadline']), - ] - - def get_recurrent_ids(self, cr, uid, select, domain, limit=100, context=None): - """Gives virtual event ids for recurring events based on value of Recurrence Rule - This method gives ids of dates that comes between start date and end date of calendar views - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user's ID for security checks, - @param limit: The Number of Results to Return """ - if not context: - context = {} - - result = [] - for data in super(calendar_event, self).read(cr, uid, select, ['rrule', 'recurrency', 'exdate', 'exrule', 'date'], context=context): - if not data['recurrency'] or not data['rrule']: - result.append(data['id']) - continue - event_date = datetime.strptime(data['date'], "%Y-%m-%d %H:%M:%S") - - # TOCHECK: the start date should be replaced by event date; the event date will be changed by that of calendar code - - if not data['rrule']: - continue - - exdate = data['exdate'] and data['exdate'].split(',') or [] - rrule_str = data['rrule'] - new_rrule_str = [] - rrule_until_date = False - is_until = False - for rule in rrule_str.split(';'): - name, value = rule.split('=') - if name == "UNTIL": - is_until = True - value = parser.parse(value) - rrule_until_date = parser.parse(value.strftime("%Y-%m-%d %H:%M:%S")) - value = value.strftime("%Y%m%d%H%M%S") - new_rule = '%s=%s' % (name, value) - new_rrule_str.append(new_rule) - new_rrule_str = ';'.join(new_rrule_str) - rdates = get_recurrent_dates(str(new_rrule_str), exdate, event_date, data['exrule']) - for r_date in rdates: - # fix domain evaluation - # step 1: check date and replace expression by True or False, replace other expressions by True - # step 2: evaluation of & and | - # check if there are one False - pile = [] - for arg in domain: - if str(arg[0]) in (str('date'), str('date_deadline')): - if (arg[1] == '='): - ok = r_date.strftime('%Y-%m-%d')==arg[2] - if (arg[1] == '>'): - ok = r_date.strftime('%Y-%m-%d')>arg[2] - if (arg[1] == '<'): - ok = r_date.strftime('%Y-%m-%d')
- Click to schedule a new meeting. -
- The calendar is shared between employees and fully integrated with - other applications such as the employee holidays or the business - opportunities. -
-+ Once installed, you can configure your API credentials for "Google calendar" +
+${object.event_id.user_id.partner_id.name} invited you for the ${object.event_id.name} meeting of ${object.event_id.user_id.company_id.name}.
+
+ ${object.event_id.get_interval(object.event_id.date, 'dayname')}
+
+ ${object.event_id.get_interval(object.event_id.date,'day')}
+
+ ${object.event_id.get_interval(object.event_id.date, 'month')}
+ ${object.event_id.get_interval(object.event_id.date, 'time')}
+ |
+
+
|
+