first commit

This commit is contained in:
root
2026-03-14 09:42:12 +00:00
commit 0adbd20c2c
10991 changed files with 1646955 additions and 0 deletions

View File

@@ -0,0 +1,2 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.

Binary file not shown.

View File

@@ -0,0 +1,328 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
import csv
from io import BytesIO, TextIOWrapper
from sql import Table
from sql.aggregate import Sum
from sql.conditionals import Coalesce
import trytond.config as config
from trytond.model import ModelStorage, ModelView, fields
from trytond.pool import Pool, PoolMeta
from trytond.pyson import Eval
from trytond.transaction import Transaction
from trytond.wizard import Button, StateTransition, StateView, Wizard
class AccountTemplate(metaclass=PoolMeta):
__name__ = 'account.account.template'
@classmethod
def __register__(cls, module_name):
cursor = Transaction().connection.cursor()
model_data = Table('ir_model_data')
# Migration from 6.0: rename ids
if module_name == 'account_fr':
for old_id, new_id in (
('fr_pcg_pay', '4011'),
('fr_pcg_recv', '4111'),
('fr_pcg_cash', '512'),
('fr_pcg_expense', '607'),
):
cursor.execute(*model_data.select(model_data.id,
where=(model_data.fs_id == new_id)
& (model_data.module == module_name)))
if cursor.fetchone():
continue
cursor.execute(*model_data.update(
columns=[model_data.fs_id],
values=[new_id],
where=(model_data.fs_id == old_id)
& (model_data.module == module_name)))
super().__register__(module_name)
class CreateChart(metaclass=PoolMeta):
__name__ = 'account.create_chart'
def default_properties(self, fields):
pool = Pool()
ModelData = pool.get('ir.model.data')
defaults = super().default_properties(fields)
template_id = ModelData.get_id('account_fr.root')
if self.account.account_template.id == template_id:
defaults['account_receivable'] = self.get_account(
'account_fr.4111')
defaults['account_payable'] = self.get_account(
'account_fr.4011')
return defaults
class FrFEC(Wizard):
__name__ = 'account.fr.fec'
start = StateView('account.fr.fec.start',
'account_fr.fec_start_view_form', [
Button('Cancel', 'end', 'tryton-cancel'),
Button('Generate', 'generate', 'tryton-ok', default=True),
])
generate = StateTransition()
result = StateView('account.fr.fec.result',
'account_fr.fec_result_view_form', [
Button('Close', 'end', 'tryton-close'),
])
def transition_generate(self):
fec = BytesIO()
writer = self.get_writer(
TextIOWrapper(fec, encoding='utf-8', write_through=True))
writer.writerow(self.get_header())
format_date = self.get_format_date()
format_number = self.get_format_number()
def convert(c):
delimiter = writer.dialect.delimiter
return (c or '').replace(delimiter, ' ').replace('\n', ' ')
for row in self.get_start_balance():
writer.writerow(map(convert, row))
for line in self.get_lines():
row = self.get_row(line, format_date, format_number)
writer.writerow(map(convert, row))
self.result.file = self.result.__class__.file.cast(fec.getvalue())
return 'result'
def default_result(self, fields):
file_ = self.result.file
self.result.file = None # No need to store it in session
format_date = self.get_format_date()
if self.start.fiscalyear.state == 'locked':
filename = '%sFEC%s.csv' % (
self.start.fiscalyear.company.party.siren or '',
format_date(self.start.fiscalyear.end_date),
)
else:
filename = None
return {
'file': file_,
'filename': filename,
}
def get_writer(self, fd):
return csv.writer(
fd, delimiter='\t', doublequote=False, escapechar='\\',
quoting=csv.QUOTE_NONE)
def get_format_date(self):
pool = Pool()
Lang = pool.get('ir.lang')
fr = Lang(code='fr_FR', date='%d.%m.%Y')
return lambda value: fr.strftime(value, '%Y%m%d')
def get_format_number(self):
pool = Pool()
Lang = pool.get('ir.lang')
fr = Lang(
decimal_point=',',
thousands_sep='',
grouping='[]',
)
return lambda value: fr.format('%.2f', value)
def get_header(self):
return [
'JournalCode',
'JournalLib',
'EcritureNum',
'EcritureDate',
'CompteNum',
'CompteLib',
'CompAuxNum',
'CompAuxLib',
'PieceRef',
'PieceDate',
'EcritureLib',
'Debit',
'Credit',
'EcritureLet',
'DateLet',
'ValidDate',
'Montantdevise',
'Idevise',
]
def get_start_balance(self):
pool = Pool()
Account = pool.get('account.account')
Move = pool.get('account.move')
Line = pool.get('account.move.line')
FiscalYear = pool.get('account.fiscalyear')
Period = pool.get('account.period')
Party = pool.get('party.party')
account = Account.__table__()
move = Move.__table__()
line = Line.__table__()
period = Period.__table__()
party = Party.__table__()
cursor = Transaction().connection.cursor()
format_date = self.get_format_date()
format_number = self.get_format_number()
company = self.start.fiscalyear.company
fiscalyears = FiscalYear.search([
('end_date', '<', self.start.fiscalyear.start_date),
('company', '=', company.id),
])
fiscalyear_ids = list(map(int, fiscalyears))
if not fiscalyear_ids:
return
query = (account
.join(line, condition=line.account == account.id)
.join(move, condition=line.move == move.id)
.join(period, condition=move.period == period.id)
.join(party, 'LEFT', condition=line.party == party.id)
.select(
account.id,
account.code,
account.name,
party.code,
party.name,
Sum(Coalesce(line.debit, 0) - Coalesce(line.credit, 0)),
where=(account.company == company.id)
& (move.state == 'posted')
& (line.state != 'draft')
& period.fiscalyear.in_(fiscalyear_ids),
group_by=[
account.id, account.code, account.name,
party.code, party.name],
order_by=account.code))
cursor.execute(*query)
for row in cursor:
_, code, name, party_code, party_name, balance = row
if not balance:
continue
if balance > 0:
debit, credit = balance, 0
else:
debit, credit = 0, -balance
yield [
config.get(
'account_fr', 'fec_opening_code',
default="OUV"),
config.get(
'account_fr', 'fec_opening_name',
default="Balance Initiale"),
config.get(
'account_fr', 'fec_opening_number',
default="0"),
format_date(self.start.fiscalyear.start_date),
code,
name,
party_code or '',
party_name or '',
'-',
format_date(self.start.fiscalyear.start_date),
'-',
format_number(debit),
format_number(credit),
'',
'',
format_date(self.start.fiscalyear.start_date),
'',
'',
]
def get_lines(self):
pool = Pool()
Line = pool.get('account.move.line')
domain = [
('move.period.fiscalyear', '=', self.start.fiscalyear.id),
('move.state', '=', 'posted'),
['OR', ('debit', '!=', 0), ('credit', '!=', 0)],
]
if self.start.deferral_period:
domain.append(('move.period', '!=', self.start.deferral_period.id))
return Line.search(
domain,
order=[
('move.post_date', 'ASC'),
('move.number', 'ASC'),
('id', 'ASC'),
])
def get_row(self, line, format_date, format_number):
end_date = self.start.fiscalyear.end_date
reconciliation = None
if line.reconciliation and line.reconciliation.date <= end_date:
reconciliation = line.reconciliation
return [
line.move.journal.code or line.move.journal.name,
line.move.journal.name,
line.move.number,
format_date(line.move.date),
line.account.code,
line.account.name,
line.party.code if line.party else '',
line.party.name if line.party else '',
self.get_reference(line) or '-',
format_date(self.get_reference_date(line)),
line.description_used or '-',
format_number(line.debit or 0),
format_number(line.credit or 0),
reconciliation.rec_name if reconciliation else '',
format_date(reconciliation.create_date.date())
if reconciliation else '',
format_date(line.move.post_date),
format_number(line.amount_second_currency)
if line.amount_second_currency else '',
line.second_currency.code if line.amount_second_currency else '',
]
def get_reference(self, line):
if isinstance(line.move.origin, ModelStorage):
return line.move.origin.rec_name
return line.move.origin
def get_reference_date(self, line):
pool = Pool()
try:
Invoice = pool.get('account.invoice')
except KeyError:
Invoice = None
if Invoice and isinstance(line.move.origin, Invoice):
return line.move.origin.invoice_date
return line.move.date
class FrFECStart(ModelView):
__name__ = 'account.fr.fec.start'
fiscalyear = fields.Many2One(
'account.fiscalyear', 'Fiscal Year', required=True)
type = fields.Selection([
('is-bic', 'IS-BIC'),
], 'Type', required=True)
deferral_period = fields.Many2One(
'account.period', "Deferral Period", required=True,
domain=[
('fiscalyear', '=', Eval('fiscalyear', -1)),
('type', '=', 'adjustment'),
],
help="The period to exclude which contains "
"the moves to balance non-deferral account")
@classmethod
def default_type(cls):
return 'is-bic'
class FrFECResult(ModelView):
__name__ = 'account.fr.fec.result'
file = fields.Binary('File', readonly=True, filename='filename')
filename = fields.Char('File Name', readonly=True)

View File

@@ -0,0 +1,28 @@
<?xml version='1.0' encoding='utf-8'?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<tryton>
<data>
<record model="ir.action.wizard" id="act_fec">
<field name="name">Generate FEC</field>
<field name="wiz_name">account.fr.fec</field>
</record>
<menuitem
parent="account.menu_reporting"
action="act_fec"
sequence="50"
id="menu_fec"/>
<record model="ir.ui.view" id="fec_start_view_form">
<field name="model">account.fr.fec.start</field>
<field name="type">form</field>
<field name="name">fec_start_form</field>
</record>
<record model="ir.ui.view" id="fec_result_view_form">
<field name="model">account.fr.fec.result</field>
<field name="type">form</field>
<field name="name">fec_result_form</field>
</record>
</data>
</tryton>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,66 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
#, fuzzy
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "Файл"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr ""
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
#, fuzzy
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Финансова година"
#, fuzzy
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "Вид"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr ""
#, fuzzy
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "Приключен"
#, fuzzy
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "Отказване"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr ""

View File

@@ -0,0 +1,63 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "Fitxer"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "Nom del fitxer"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr "Període de tancament"
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Exercici fiscal"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "Tipus"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
"El període a excloure perquè conté els moviment de regularització de les "
"comptes de tancament"
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr "Resultat FEC Comptabilitat Francesa"
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr "Inici FEC Comptabilitat Francesa"
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Genera FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Genera FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr "IS-BIC"
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "Tanca"
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "Cancel·la"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr "Genera"

View File

@@ -0,0 +1,61 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr ""
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr ""
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr ""
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr ""
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr ""
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr ""
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr ""
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr ""

View File

@@ -0,0 +1,63 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "Datei"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "Dateiname"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr "Buchungszeitraum Saldenvortrag"
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Geschäftsjahr"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "Typ"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
"Der auszuschließende Buchungszeitraum, der die Abschlussbuchungssätze für "
"die Erfolgs- und Aufwandskonten enthält"
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr "Konto FEC Ergebnis"
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr "Konto FEC Start"
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "FEC erstellen"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "FEC erstellen"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr "IS-BIC"
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "Schließen"
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "Abbrechen"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr "Erstellen"

View File

@@ -0,0 +1,63 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "Archivo"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "Nombre del archivo"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr "Periodo de cierre"
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Ejercicio fiscal"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "Tipo"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
"El periodo a excluir porqué contiene movimientos de regularización de las "
"cuentas de cierre"
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr "Resultado FEC Contabilidad Francesa"
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr "Inicio FEC Contabilidad Francesa"
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generar FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generar FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr "IS-BIC"
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "Cerrar"
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "Cancelar"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr "Generar"

View File

@@ -0,0 +1,61 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr ""
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr ""
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr ""
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr ""
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr ""
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr ""
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr ""
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr ""

View File

@@ -0,0 +1,61 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "Fail"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "Faili nimi"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr "Viivituse periood"
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Majandusaasta"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "Tüüp"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr "Välistatav periood, mis sisaldab mitte-viivituse konto saldo kandeid"
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Loo FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Loo FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr "IS-BIC kood"
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "Sulge"
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "Tühista"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr "Loo"

View File

@@ -0,0 +1,62 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "فایل"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "نام فایل"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr "دوره بازپرداخت"
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "سال مالی"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "نوع"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
"دوره ای که محتویات آن را شامل حرکت به تعادل حساب غیر از بازپرداخت می شود"
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "تولید FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "تولید FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr "IS-BIC"
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "بسته"
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "انصراف"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr "تولید"

View File

@@ -0,0 +1,61 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr ""
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr ""
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr ""
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr ""
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr ""
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr ""
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr ""
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr ""

View File

@@ -0,0 +1,63 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "Fichier"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "Nom du fichier"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr "Période de report"
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Année fiscale"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "Type"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
"La période à exclure qui contient les mouvements d'équilibre des comptes de "
"non-report"
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr "Résultat comptable Français FEC"
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr "Comptes FR FEC Début"
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Générer FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Générer FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr "IS-BIC"
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "Fermer"
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "Annuler"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr "Générer"

View File

@@ -0,0 +1,65 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
#, fuzzy
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "Fájl"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr ""
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr ""
#, fuzzy
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "Típus"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr ""
#, fuzzy
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "Bezár"
#, fuzzy
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "Mégse"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr ""

View File

@@ -0,0 +1,61 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "Berkas"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "Nama Berkas"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Tahun Fiskal"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr ""
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr ""
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr ""
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "Tutup"
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "Batal"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr ""

View File

@@ -0,0 +1,64 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "File"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "Nome del file"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
#, fuzzy
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Esercizio"
#, fuzzy
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "Tipo"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr ""
#, fuzzy
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "Chiusura"
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "Annulla"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr ""

View File

@@ -0,0 +1,63 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "ແຟ້ມ"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "ຊື່ແຟັມ"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "ປີການບັນຊີ"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "ປະເພດ"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
#, fuzzy
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
#, fuzzy
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr "IS-BIC"
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "ອັດ"
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "ຍົກເລີກ"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr "ສ້າງ"

View File

@@ -0,0 +1,61 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr ""
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr ""
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Finansiniai metai"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr ""
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr ""
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr ""
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr ""
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr ""

View File

@@ -0,0 +1,63 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "Bestand"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "Bestandsnaam"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr "Verslag periode"
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Boekjaar"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "Type"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
"De uit te sluiten periode die de afsluitingsboekingen voor wint en "
"verliesrekening bevat"
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr "Grootboek Fr Fec Resultaat"
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr "Grootboek Fr Fec Start"
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Genereer FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Genereer FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr "IS-BIC"
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "Sluiten"
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "Annuleer"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr "Genereer"

View File

@@ -0,0 +1,63 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "Plik"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "Nazwa pliku"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Rok podatkowy"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "Typ"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
#, fuzzy
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
#, fuzzy
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr ""
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "Zamknij"
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "Anuluj"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr "Generuj"

View File

@@ -0,0 +1,63 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "Arquivo"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "Nome do Arquivo"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Ano Fiscal"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "Tipo"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
#, fuzzy
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
#, fuzzy
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr "IS-BIC"
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "Fechar"
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "Cancelar"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr "Gerar"

View File

@@ -0,0 +1,61 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr ""
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr ""
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "An Fiscal"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr ""
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr ""
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr ""
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr ""
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr ""
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr ""

View File

@@ -0,0 +1,66 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
#, fuzzy
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "Файл"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr ""
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
#, fuzzy
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Финансовый год"
#, fuzzy
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "Тип"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr ""
#, fuzzy
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "Закрыть"
#, fuzzy
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "Отменить"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr ""

View File

@@ -0,0 +1,63 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "Datoteka"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "Ime datoteke"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Poslovno leto"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "Vrsta"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
#, fuzzy
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
#, fuzzy
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr "IS-BIC"
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "Zapri"
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "Prekliči"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr "Izdelaj"

View File

@@ -0,0 +1,61 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "Dosya"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "Dosya Adı"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "Mali Yıl"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "Tip"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr ""
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr ""
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr ""
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr ""

View File

@@ -0,0 +1,61 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr ""
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr ""
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr ""
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr ""
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr ""
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr ""
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr ""
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr ""
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr ""
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr ""

View File

@@ -0,0 +1,61 @@
#
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "field:account.fr.fec.result,file:"
msgid "File"
msgstr "文件"
msgctxt "field:account.fr.fec.result,filename:"
msgid "File Name"
msgstr "文件名"
msgctxt "field:account.fr.fec.start,deferral_period:"
msgid "Deferral Period"
msgstr ""
msgctxt "field:account.fr.fec.start,fiscalyear:"
msgid "Fiscal Year"
msgstr "财年"
msgctxt "field:account.fr.fec.start,type:"
msgid "Type"
msgstr "类型"
msgctxt "help:account.fr.fec.start,deferral_period:"
msgid ""
"The period to exclude which contains the moves to balance non-deferral "
"account"
msgstr ""
msgctxt "model:account.fr.fec.result,string:"
msgid "Account Fr Fec Result"
msgstr ""
msgctxt "model:account.fr.fec.start,string:"
msgid "Account Fr Fec Start"
msgstr ""
msgctxt "model:ir.action,name:act_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "model:ir.ui.menu,name:menu_fec"
msgid "Generate FEC"
msgstr "Generate FEC"
msgctxt "selection:account.fr.fec.start,type:"
msgid "IS-BIC"
msgstr ""
msgctxt "wizard_button:account.fr.fec,result,end:"
msgid "Close"
msgstr "关闭"
msgctxt "wizard_button:account.fr.fec,start,end:"
msgid "Cancel"
msgstr "取消"
msgctxt "wizard_button:account.fr.fec,start,generate:"
msgid "Generate"
msgstr "生成"

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,3 @@
JournalCode JournalLib EcritureNum EcritureDate CompteNum CompteLib CompAuxNum CompAuxLib PieceRef PieceDate EcritureLib Debit Credit EcritureLet DateLet ValidDate Montantdevise Idevise
REV Revenue 1 20170101 7011 Produits finis (ou groupe) A - 20170101 - 0,00 5,00 20170101
REV Revenue 1 20170101 4111 Clients - Ventes de biens ou de prestations de services 2 Party - 20170101 - 5,00 0,00 20170101
1 JournalCode JournalLib EcritureNum EcritureDate CompteNum CompteLib CompAuxNum CompAuxLib PieceRef PieceDate EcritureLib Debit Credit EcritureLet DateLet ValidDate Montantdevise Idevise
2 REV Revenue 1 20170101 7011 Produits finis (ou groupe) A - 20170101 - 0,00 5,00 20170101
3 REV Revenue 1 20170101 4111 Clients - Ventes de biens ou de prestations de services 2 Party - 20170101 - 5,00 0,00 20170101

View File

@@ -0,0 +1,9 @@
JournalCode JournalLib EcritureNum EcritureDate CompteNum CompteLib CompAuxNum CompAuxLib PieceRef PieceDate EcritureLib Debit Credit EcritureLet DateLet ValidDate Montantdevise Idevise
OUV Balance Initiale 0 20180101 4111 Clients - Ventes de biens ou de prestations de services 2 Party - 20180101 - 5,00 0,00 20180101
OUV Balance Initiale 0 20180101 7011 Produits finis (ou groupe) A - 20180101 - 0,00 5,00 20180101
REV Revenue 1 20180101 7011 Produits finis (ou groupe) A - 20180101 - 0,00 10,00 20180101
REV Revenue 1 20180101 4111 Clients - Ventes de biens ou de prestations de services 2 Party - 20180101 - 10,00 0,00 20180101
REV Revenue 2 20180101 7011 Produits finis (ou groupe) A - 20180101 - 0,00 42,00 20180101
REV Revenue 2 20180101 4111 Clients - Ventes de biens ou de prestations de services 2 Party - 20180101 - 42,00 0,00 1 {current_date} 20180101
CASH Cash 3 20180101 5311 Caisse en monnaie nationale - 20180101 - 42,00 0,00 20180101
CASH Cash 3 20180101 4111 Clients - Ventes de biens ou de prestations de services 2 Party - 20180101 - 0,00 42,00 1 {current_date} 20180101
1 JournalCode JournalLib EcritureNum EcritureDate CompteNum CompteLib CompAuxNum CompAuxLib PieceRef PieceDate EcritureLib Debit Credit EcritureLet DateLet ValidDate Montantdevise Idevise
2 OUV Balance Initiale 0 20180101 4111 Clients - Ventes de biens ou de prestations de services 2 Party - 20180101 - 5,00 0,00 20180101
3 OUV Balance Initiale 0 20180101 7011 Produits finis (ou groupe) A - 20180101 - 0,00 5,00 20180101
4 REV Revenue 1 20180101 7011 Produits finis (ou groupe) A - 20180101 - 0,00 10,00 20180101
5 REV Revenue 1 20180101 4111 Clients - Ventes de biens ou de prestations de services 2 Party - 20180101 - 10,00 0,00 20180101
6 REV Revenue 2 20180101 7011 Produits finis (ou groupe) A - 20180101 - 0,00 42,00 20180101
7 REV Revenue 2 20180101 4111 Clients - Ventes de biens ou de prestations de services 2 Party - 20180101 - 42,00 0,00 1 {current_date} 20180101
8 CASH Cash 3 20180101 5311 Caisse en monnaie nationale - 20180101 - 42,00 0,00 20180101
9 CASH Cash 3 20180101 4111 Clients - Ventes de biens ou de prestations de services 2 Party - 20180101 - 0,00 42,00 1 {current_date} 20180101

View File

@@ -0,0 +1,2 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.

View File

@@ -0,0 +1,205 @@
============
FEC Scenario
============
Imports::
>>> import datetime as dt
>>> import io
>>> import os
>>> from decimal import Decimal
>>> from proteus import Model, Wizard
>>> from trytond.modules.account.tests.tools import create_fiscalyear
>>> from trytond.modules.account_fr.tests.tools import create_chart, get_accounts
>>> from trytond.modules.company.tests.tools import create_company, get_company
>>> from trytond.tests.tools import activate_modules, assertEqual
Activate modules::
>>> config = activate_modules('account_fr', create_company, create_chart)
Setup company::
>>> company = get_company()
>>> siren = company.party.identifiers.new(type='fr_siren')
>>> siren.code = '820043784'
>>> company.party.save()
Create last year fiscal year::
>>> fiscalyear_previous = create_fiscalyear(
... today=(dt.date(2017, 1, 1), dt.date(2017, 12, 31)))
>>> fiscalyear_previous.click('create_period')
>>> period_previous = fiscalyear_previous.periods[0]
Create fiscal year::
>>> fiscalyear = create_fiscalyear(
... today=(dt.date(2018, 1, 1), dt.date(2018, 12, 31)))
>>> fiscalyear.click('create_period')
>>> period = fiscalyear.periods[0]
Get accounts::
>>> accounts = get_accounts()
>>> receivable = accounts['receivable']
>>> revenue = accounts['revenue']
>>> expense = accounts['expense']
>>> cash = accounts['cash']
Create parties::
>>> Party = Model.get('party.party')
>>> party = Party(name='Party')
>>> party.save()
Create some moves::
>>> Journal = Model.get('account.journal')
>>> Move = Model.get('account.move')
>>> journal_revenue, = Journal.find([
... ('code', '=', 'REV'),
... ])
>>> journal_cash, = Journal.find([
... ('code', '=', 'CASH'),
... ])
>>> move = Move()
>>> move.period = period_previous
>>> move.journal = journal_revenue
>>> move.date = period_previous.start_date
>>> line = move.lines.new()
>>> line.account = revenue
>>> line.credit = Decimal(5)
>>> line = move.lines.new()
>>> line.account = receivable
>>> line.debit = Decimal(5)
>>> line.party = party
>>> move.save()
>>> Move.write([move.id], {
... 'post_date': period_previous.start_date,
... 'number': '1',
... }, config.context)
>>> move.click('post')
With an empty line::
>>> move = Move()
>>> move.period = period
>>> move.journal = journal_revenue
>>> move.date = period.start_date
>>> line = move.lines.new()
>>> line.account = revenue
>>> line.credit = Decimal(10)
>>> line = move.lines.new()
>>> line.account = receivable
>>> line.debit = Decimal(10)
>>> line.party = party
>>> line = move.lines.new()
>>> line.account = cash
>>> line.debit = line.credit = Decimal(0)
>>> move.save()
>>> Move.write([move.id], {
... 'post_date': period.start_date,
... 'number': '1',
... }, config.context)
>>> move.click('post')
With reconciliation::
>>> move = Move()
>>> move.period = period
>>> move.journal = journal_revenue
>>> move.date = period.start_date
>>> line = move.lines.new()
>>> line.account = revenue
>>> line.credit = Decimal(42)
>>> line = move.lines.new()
>>> line.account = receivable
>>> line.debit = Decimal(42)
>>> line.party = party
>>> move.save()
>>> reconcile1, = [l for l in move.lines if l.account == receivable]
>>> Move.write([move.id], {
... 'post_date': period.start_date,
... 'number': '2',
... }, config.context)
>>> move.click('post')
>>> move = Move()
>>> move.period = period
>>> move.journal = journal_cash
>>> move.date = period.start_date
>>> line = move.lines.new()
>>> line.account = cash
>>> line.debit = Decimal(42)
>>> line = move.lines.new()
>>> line.account = receivable
>>> line.credit = Decimal(42)
>>> line.party = party
>>> move.save()
>>> Move.write([move.id], {
... 'post_date': period.start_date,
... 'number': '3',
... }, config.context)
>>> move.click('post')
>>> reconcile2, = [l for l in move.lines if l.account == receivable]
>>> reconcile_lines = Wizard('account.move.reconcile_lines',
... [reconcile1, reconcile2])
>>> reconcile_lines.state
'end'
>>> reconcile_date = reconcile1.reconciliation.create_date
Balance non-deferral::
>>> Period = Model.get('account.period')
>>> Account = Model.get('account.account')
>>> journal_closing = Journal(name="Closing", code="CLO", type='situation')
>>> journal_closing.save()
>>> period_closing = Period(name="Closing")
>>> period_closing.fiscalyear = fiscalyear
>>> period_closing.start_date = fiscalyear.end_date
>>> period_closing.end_date = fiscalyear.end_date
>>> period_closing.type = 'adjustment'
>>> period_closing.save()
>>> balance_non_deferral = Wizard('account.fiscalyear.balance_non_deferral')
>>> balance_non_deferral.form.fiscalyear = fiscalyear
>>> balance_non_deferral.form.journal = journal_closing
>>> balance_non_deferral.form.period = period_closing
>>> balance_non_deferral.form.credit_account, = Account.find([
... ('code', '=', '120'),
... ])
>>> balance_non_deferral.form.debit_account, = Account.find([
... ('code', '=', '129'),
... ])
>>> balance_non_deferral.execute('balance')
>>> move, = balance_non_deferral.actions[0]
>>> move.click('post')
Generate FEC::
>>> FEC = Wizard('account.fr.fec')
>>> FEC.form.fiscalyear = fiscalyear
>>> FEC.form.deferral_period = period_closing
>>> FEC.execute('generate')
>>> FEC.form.filename
>>> file = os.path.join(os.path.dirname(__file__), 'FEC.csv')
>>> with io.open(file, mode='rb') as fp:
... template = fp.read().decode('utf-8')
>>> current_date = reconcile_date.strftime('%Y%m%d')
>>> template = template.format(
... current_date=current_date,
... )
>>> assertEqual(FEC.form.file.decode('utf-8'), template)
Generate FEC for previous fiscal year::
>>> FEC = Wizard('account.fr.fec')
>>> FEC.form.fiscalyear = fiscalyear_previous
>>> FEC.execute('generate')
>>> file = os.path.join(os.path.dirname(__file__), 'FEC-previous.csv')
>>> with io.open(file, mode='rb') as fp:
... assertEqual(FEC.form.file.decode('utf-8'), fp.read().decode('utf-8'))

View File

@@ -0,0 +1,20 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
from trytond.modules.account.tests import create_chart
from trytond.modules.company.tests import create_company, set_company
from trytond.tests.test_tryton import ModuleTestCase, with_transaction
class AccountFRTestCase(ModuleTestCase):
'Test Account FR module'
module = 'account_fr'
@with_transaction()
def test_create_chart(self):
company = create_company()
with set_company(company):
create_chart(company, chart=self.module + '.root')
del ModuleTestCase

View File

@@ -0,0 +1,8 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
from trytond.tests.test_tryton import load_doc_tests
def load_tests(*args, **kwargs):
return load_doc_tests(__name__, __file__, *args, **kwargs)

View File

@@ -0,0 +1,70 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
from proteus import Model, Wizard
from trytond.modules.company.tests.tools import get_company
__all__ = ['create_chart', 'get_accounts']
def create_chart(company=None, config=None):
"Create chart of accounts"
AccountTemplate = Model.get('account.account.template', config=config)
ModelData = Model.get('ir.model.data', config=config)
if not company:
company = get_company(config=config)
chart_id = ModelData.get_id('account_fr', 'root', config.context)
account_template = AccountTemplate(chart_id)
create_chart = Wizard('account.create_chart', config=config)
create_chart.execute('account')
create_chart.form.account_template = account_template
create_chart.form.company = company
create_chart.execute('create_account')
accounts = get_accounts(company, config=config)
create_chart.form.account_receivable = accounts['receivable']
create_chart.form.account_payable = accounts['payable']
create_chart.execute('create_properties')
return create_chart
def get_accounts(company=None, config=None):
"Return accounts per kind"
Account = Model.get('account.account', config=config)
if not company:
company = get_company(config=config)
accounts = {}
accounts['receivable'], = Account.find([
('type.receivable', '=', True),
('company', '=', company.id),
('code', '=', '4111'),
], limit=1)
accounts['payable'], = Account.find([
('type.payable', '=', True),
('company', '=', company.id),
('code', '=', '4011'),
], limit=1)
accounts['revenue'], = Account.find([
('type.revenue', '=', True),
('company', '=', company.id),
('code', '=', '7011'),
], limit=1)
accounts['expense'], = Account.find([
('type.expense', '=', True),
('company', '=', company.id),
('code', '=', '6071'),
], limit=1)
accounts['cash'], = Account.find([
('company', '=', company.id),
('code', '=', '5311'),
])
accounts['tax'], = Account.find([
('company', '=', company.id),
('code', '=', '44558'),
])
return accounts

View File

@@ -0,0 +1,23 @@
[tryton]
version=7.8.0
depends:
account
party_siret
extras_depend:
account_asset
account_deposit
account_invoice
sale_advance_payment
xml:
account.xml
account_fr.xml
tax_fr.xml
[register]
model:
account.AccountTemplate
account.FrFECStart
account.FrFECResult
wizard:
account.CreateChart
account.FrFEC

View File

@@ -0,0 +1,7 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<form col="2">
<label name="file"/>
<field name="file"/>
</form>

View File

@@ -0,0 +1,11 @@
<?xml version="1.0"?>
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
this repository contains the full copyright notices and license terms. -->
<form>
<label name="fiscalyear"/>
<field name="fiscalyear"/>
<label name="type"/>
<field name="type"/>
<label name="deferral_period"/>
<field name="deferral_period"/>
</form>