r3880 - in trunk: lima-business/src/main/java/org/chorem/lima/business/ejb lima-business/src/main/java/org/chorem/lima/business/ejb/csv lima-business/src/test/java/org/chorem/lima/business lima-business/src/test/resources/import lima-business-api/src/main/java/org/chorem/lima/business lima-business-api/src/main/java/org/chorem/lima/business/api lima-callao/src/main/xmi lima-swing/src/main/java/org/chorem/lima/ui/financialstatementchart lima-swing/src/main/java/org/chorem/lima/ui/importexport
Author: dcosse Date: 2014-07-31 14:01:23 +0200 (Thu, 31 Jul 2014) New Revision: 3880 Url: http://forge.chorem.org/projects/lima/repository/revisions/3880 Log: refs #1032 import export des VATStatements Added: trunk/lima-business-api/src/main/java/org/chorem/lima/business/AlreadyExistFinancialStatement.java trunk/lima-business-api/src/main/java/org/chorem/lima/business/AlreadyExistVatStatement.java trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/csv/VatStatementModel.java trunk/lima-business/src/test/resources/import/vat_shortened.csv Removed: trunk/lima-business-api/src/main/java/org/chorem/lima/business/AlreadyExistFinancialTransaction.java Modified: trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/FinancialStatementService.java trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/NewExportService.java trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/NewImportService.java trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/VatStatementService.java trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/FinancialStatementServiceImpl.java trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/ImportServiceImpl.java trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/NewExportServiceImpl.java trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/NewImportServiceImpl.java trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/VatStatementServiceImpl.java trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/csv/AbstractLimaModel.java trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/csv/FinancialStatementModel.java trunk/lima-business/src/test/java/org/chorem/lima/business/AbstractLimaTest.java trunk/lima-business/src/test/java/org/chorem/lima/business/ImportServiceImplTest.java trunk/lima-business/src/test/java/org/chorem/lima/business/NewImportExportServiceTest.java trunk/lima-callao/src/main/xmi/accounting-model.zargo trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialstatementchart/FinancialStatementChartTreeTableModel.java trunk/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java trunk/lima-swing/src/main/java/org/chorem/lima/ui/opening/OpeningViewHandler.java trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatchart/VatChartTreeTableModel.java trunk/lima-swing/src/main/resources/i18n/lima-swing_fr_FR.properties trunk/lima-swing/src/main/resources/import/vat_base.csv trunk/lima-swing/src/main/resources/import/vat_default.csv trunk/lima-swing/src/main/resources/import/vat_developed.csv trunk/lima-swing/src/main/resources/import/vat_shortened.csv Modified: trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/FinancialStatementServiceImpl.java =================================================================== --- trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/FinancialStatementServiceImpl.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/FinancialStatementServiceImpl.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -39,7 +39,7 @@ import org.chorem.lima.beans.FinancialStatementDatas; import org.chorem.lima.beans.FinancialStatementDatasImpl; import org.chorem.lima.beans.ReportsDatas; -import org.chorem.lima.business.AlreadyExistFinancialTransaction; +import org.chorem.lima.business.AlreadyExistFinancialStatement; import org.chorem.lima.business.LimaException; import org.chorem.lima.business.NotAllowedLabel; import org.chorem.lima.business.api.AccountService; @@ -84,7 +84,7 @@ } }; - protected void validateNewFinancialStatement(FinancialStatement masterFinancialStatement, FinancialStatement financialStatement) throws AlreadyExistFinancialTransaction, NotAllowedLabel { + protected void validateNewFinancialStatement(FinancialStatement masterFinancialStatement, FinancialStatement financialStatement) throws AlreadyExistFinancialStatement, NotAllowedLabel { if (financialStatement.getLabel().contains("/")) { throw new NotAllowedLabel(financialStatement.getLabel()); } @@ -95,7 +95,7 @@ } Map indexedSubFinancialStatements = Maps.uniqueIndex(masterSubFinancialStatements, GET_LABEL); if (indexedSubFinancialStatements.get(financialStatement.getLabel()) != null){ - throw new AlreadyExistFinancialTransaction(financialStatement.getLabel(), masterFinancialStatement.getLabel()); + throw new AlreadyExistFinancialStatement(financialStatement.getLabel(), masterFinancialStatement.getLabel()); } } } @@ -134,7 +134,7 @@ @Override public FinancialStatement createFinancialStatement(FinancialStatement masterFinancialStatement, - FinancialStatement financialStatement) throws AlreadyExistFinancialTransaction, NotAllowedLabel { + FinancialStatement financialStatement) throws AlreadyExistFinancialStatement, NotAllowedLabel { validateNewFinancialStatement(masterFinancialStatement, financialStatement); Modified: trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/ImportServiceImpl.java =================================================================== --- trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/ImportServiceImpl.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/ImportServiceImpl.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -37,62 +37,40 @@ import org.apache.pdfbox.exceptions.COSVisitorException; import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.pdmodel.interactive.form.PDField; -import org.chorem.lima.beans.ClosedPeriodicEntryBookImport; -import org.chorem.lima.beans.ClosedPeriodicEntryBookImportImpl; import org.chorem.lima.beans.EntryEBP; import org.chorem.lima.beans.EntryEBPImpl; import org.chorem.lima.beans.EntryImport; -import org.chorem.lima.beans.EntryImportImpl; -import org.chorem.lima.beans.FinancialStatementImport; import org.chorem.lima.beans.FinancialTransactionImport; -import org.chorem.lima.beans.FinancialTransactionImportImpl; -import org.chorem.lima.beans.VatStatementImport; -import org.chorem.lima.beans.VatStatementImportImpl; import org.chorem.lima.business.AlreadyExistAccountException; -import org.chorem.lima.business.BeginAfterEndFiscalPeriodException; import org.chorem.lima.business.ImportEbpException; import org.chorem.lima.business.InvalidAccountNumberException; import org.chorem.lima.business.LimaConfig; import org.chorem.lima.business.LockedEntryBookException; import org.chorem.lima.business.LockedFinancialPeriodException; -import org.chorem.lima.business.MoreOneUnlockFiscalPeriodException; -import org.chorem.lima.business.NotBeginNextDayOfLastFiscalPeriodException; -import org.chorem.lima.business.NotLockedClosedPeriodicEntryBooksException; -import org.chorem.lima.business.UnbalancedFinancialTransactionsException; -import org.chorem.lima.business.UnfilledEntriesException; -import org.chorem.lima.business.WithoutEntryBookFinancialTransactionsException; import org.chorem.lima.business.api.AccountService; import org.chorem.lima.business.api.ClosedPeriodicEntryBookService; import org.chorem.lima.business.api.EntryBookService; import org.chorem.lima.business.api.EntryService; import org.chorem.lima.business.api.FinancialPeriodService; -import org.chorem.lima.business.api.FinancialStatementService; import org.chorem.lima.business.api.FinancialTransactionService; import org.chorem.lima.business.api.FiscalPeriodService; import org.chorem.lima.business.api.IdentityService; import org.chorem.lima.business.api.ImportService; -import org.chorem.lima.business.api.VatStatementService; import org.chorem.lima.business.utils.DocumentsEnum; import org.chorem.lima.business.utils.EntryEBPComparator; import org.chorem.lima.business.utils.FiscalPeriodComparator; import org.chorem.lima.business.utils.ImportExportEntityEnum; import org.chorem.lima.entity.Account; import org.chorem.lima.entity.AccountImpl; -import org.chorem.lima.entity.ClosedPeriodicEntryBook; import org.chorem.lima.entity.Entry; import org.chorem.lima.entity.EntryBook; import org.chorem.lima.entity.EntryBookImpl; import org.chorem.lima.entity.EntryImpl; -import org.chorem.lima.entity.FinancialPeriod; import org.chorem.lima.entity.FinancialTransaction; import org.chorem.lima.entity.FinancialTransactionImpl; import org.chorem.lima.entity.FiscalPeriod; -import org.chorem.lima.entity.FiscalPeriodImpl; import org.chorem.lima.entity.Identity; import org.chorem.lima.entity.IdentityImpl; -import org.chorem.lima.entity.VatStatement; -import org.chorem.lima.entity.VatStatementImpl; -import org.nuiton.topia.persistence.TopiaException; import javax.ejb.EJB; import javax.ejb.Remote; @@ -110,9 +88,6 @@ import java.util.Arrays; import java.util.Collections; import java.util.Date; -import java.util.HashMap; -import java.util.Iterator; -import java.util.LinkedHashMap; import java.util.List; import java.util.Map; @@ -157,12 +132,6 @@ private FinancialTransactionService financialTransactionService; @EJB - private FinancialStatementService financialStatementService; - - @EJB - private VatStatementService vatStatementService; - - @EJB private EntryBookService entryBookService; @EJB @@ -555,24 +524,13 @@ ImportExportEntityEnum importExportEntityEnum) throws ImportEbpException { StringBuilder result = new StringBuilder(); - // FinancialStatements - Map<String, List<FinancialStatementImport>> financialStatements = null; - // VatStatement - Map<String, List<VatStatementImport>> vatStatements = null; // Transactions and entries Map<Integer, FinancialTransactionImport> financialTransactions = null; Map<Integer, List<EntryImport>> entries = null; switch (importExportEntityEnum) { - case VATSTATEMENT: - vatStatements = new LinkedHashMap<String, List<VatStatementImport>>(); - break; case FINANCIALTRANSACTION: - case ENTRY: - financialTransactions = new HashMap<Integer, FinancialTransactionImport>(); - entries = new HashMap<Integer, List<EntryImport>>(); - break; } CSVReader csvReader = null; try { @@ -585,47 +543,14 @@ || importExportEntityEnum == ImportExportEntityEnum.FINANCIALTRANSACTION || importExportEntityEnum == ImportExportEntityEnum.ENTRY) { switch (importExportEntityEnum) { - case ENTRYBOOK: - result.append(importEntryBooksChartCSV(nextLine)); - break; - case ACCOUNT: - result.append(importAccountsChartsCSV(nextLine)); - break; - case VATSTATEMENT: - result.append(importVatStatementChartCSV(nextLine, - vatStatements)); - break; case FINANCIALTRANSACTION: - case ENTRY: - // Entries and transactions always go along - ImportExportEntityEnum type = - ImportExportEntityEnum.valueOfLabel(nextLine[0]); - if (type != null) { - switch (type) { - case FINANCIALTRANSACTION: - importFinancialTransactionsCSV(nextLine, - financialTransactions); - break; - case ENTRY: - importEntriesCSV(nextLine, entries); - break; - } - } - break; } } } //create entity switch (importExportEntityEnum) { - case VATSTATEMENT: - result.append(createVatStatements(vatStatements)); - break; case FINANCIALTRANSACTION: - case ENTRY: - result.append(createFinancialTransactionsAndEntries( - financialTransactions, entries)); - break; } } catch (IOException e) { @@ -701,418 +626,6 @@ return result.toString(); } - /** - * Import and create accounts Structure : TYPE | accountNumber | label - * | [thirdparty] - * - * @param nextLine The line to import - * @return Success or error message - * @throws ImportEbpException If the line format is invalid - */ - protected String importAccountsChartsCSV(String[] nextLine) throws ImportEbpException{ - // Check line format - if (nextLine.length < 3 - || ! nextLine[0].equals(ImportExportEntityEnum.ACCOUNT.getLabel())) { - throw new ImportEbpException(t("lima-business.import.lineformatmismatch")); - } - - StringBuilder result = new StringBuilder(); - - String accountNumber = nextLine[1]; - // if not exists, create it - if (accountService.getAccountByNumber(accountNumber) == null) { - - Account account = new AccountImpl(); - account.setAccountNumber(accountNumber); - String label = nextLine[2]; - account.setLabel(label); - if (nextLine.length > 3) { - String thirdParty = nextLine[3]; - account.setThirdParty(thirdParty); - } - - try { - accountService.createAccount(account); - } catch (AlreadyExistAccountException e) { - result.append(t("lima-business.import.account.alreadyexist", accountNumber)); - } catch (InvalidAccountNumberException e) { - result.append(t("lima-business.import.account.InvalidAccountNumber", accountNumber)); - } - result.append(t("lima-business.import.accountadded", - account.getAccountNumber(), - account.getLabel())); - } else { - result.append(t("lima-business.import.accountalreadyexist", accountNumber)); - } - - return result.toString(); - } - - /** - * Import and create fiscal period Structure : TYPE | BeginDate | EndDate - * | Locked - * - * @param nextLine - * @param fiscalPeriods - * @return - * @throws ParseException - */ - protected String importFiscalPeriodCSV(String[] nextLine, - List<FiscalPeriod> fiscalPeriods) { - StringBuilder result = new StringBuilder(); - - try { - FiscalPeriod fiscalPeriod = new FiscalPeriodImpl(); - Date beginDate = SDATEFORMAT.parse(nextLine[1]); - fiscalPeriod.setBeginDate(beginDate); - Date endDate = SDATEFORMAT.parse(nextLine[2]); - fiscalPeriod.setEndDate(endDate); - fiscalPeriod.setLocked(Boolean.parseBoolean(nextLine[3])); - - // if not exist, skip - if (financialPeriodService.getFinancialPeriods(beginDate, endDate) == null) { - fiscalPeriods.add(fiscalPeriod); - } else { - result.append(t("lima-business.import.fiscalperiodalreadyexist", beginDate, endDate)); - } - } catch (ParseException e) { - result.append(t("lima-business.common.failed", e.getMessage())); - } - - return result.toString(); - } - - /** - * Import and create entrybooks Structure : TYPE | Code | Label | Type - * - * @param nextLine - * @return - */ - protected String importEntryBooksChartCSV(String[] nextLine) { - StringBuilder result = new StringBuilder(); - - EntryBook entryBook = new EntryBookImpl(); - entryBook.setCode(StringUtils.trimToNull(nextLine[1])); - entryBook.setLabel(StringUtils.trimToNull(nextLine[2])); - - // if exist, skip - if (entryBookService.getEntryBookByCode(entryBook.getCode()) != null) { - result.append(t("lima-business.import.entrybookalreadyexist", entryBook.getLabel())); - } else { - // create it - entryBookService.createEntryBook(entryBook); - result.append(t("lima-business.import.financialstatementadded", entryBook.getLabel())); - } - - return result.toString(); - } - - /** - * Import and create closedperiodicentrybook import Structure : TYPE | - * BeginDate | EndDate | Locked - * - * @param nextLine - * @param closedPeriodicEntryBooks - */ - protected void importClosedPeriodicEntryBookCSV(String[] nextLine, - List<ClosedPeriodicEntryBookImport> closedPeriodicEntryBooks) { - String locked = nextLine[1]; - String beginDate = nextLine[2]; - String endDate = nextLine[3]; - String entryBookCode = nextLine[4]; - - if (Boolean.parseBoolean(locked)) { - ClosedPeriodicEntryBookImport closedPeriodicEntryBookImport = new ClosedPeriodicEntryBookImportImpl(); - closedPeriodicEntryBookImport.setLocked(locked); - closedPeriodicEntryBookImport - .setBeginDateFinancialPeriod(beginDate); - closedPeriodicEntryBookImport.setEndDateFinancialPeriod(endDate); - closedPeriodicEntryBookImport.setCodeEntryBook(entryBookCode); - - closedPeriodicEntryBooks.add(closedPeriodicEntryBookImport); - } - } - - /** - * Import and create vatstatement Structure : TYPE | boxName | label - * | header | accounts | masterVatStatement - * - * @param nextLine - * @param vatStatements - * @return - */ - protected String importVatStatementChartCSV(String[] nextLine, - Map<String, List<VatStatementImport>> vatStatements) { - - StringBuilder result = new StringBuilder(); - - String boxName = nextLine[1]; - String label = StringUtils.trimToNull(nextLine[2]); - String header = nextLine[3]; - String accounts = StringUtils.trimToNull(nextLine[4]); - String masterVatStatement = nextLine[5]; - - // if exist, skip - if (!vatStatementService.checkVatStatementExist(label)) { - // create it - VatStatementImport vatStatementImport = new VatStatementImportImpl(); - vatStatementImport.setLabel(label); - vatStatementImport.setBoxName(boxName); - vatStatementImport.setHeader(header); - vatStatementImport.setAccounts(accounts); - vatStatementImport.setMasterVatStatement(masterVatStatement); - - // put it in hashlinkedlist - if (vatStatements.containsKey(label)) { - vatStatements.get(label).add(vatStatementImport); - } else { - List<VatStatementImport> list = new ArrayList<VatStatementImport>(); - list.add(vatStatementImport); - vatStatements.put(label, list); - } - } else { - result.append(t("lima-business.import.vatstatementalreadyexist", label)); - } - - return result.toString(); - } - - - /** - * Import and create financialtransactions Structure : TYPE | NumTransac | - * TransactionDate | AmountDebit | AmountCredit | EntryBook Code - * - * @param nextLine - * @param financialTransactions - */ - protected void importFinancialTransactionsCSV(String[] nextLine, - Map<Integer, FinancialTransactionImport> financialTransactions) { - int num = new Integer(nextLine[1]); - FinancialTransactionImport financialTransactionImport = new FinancialTransactionImportImpl(); - financialTransactionImport.setDate(nextLine[2]); - financialTransactionImport.setAmountDebit(nextLine[3]); - financialTransactionImport.setAmountCredit(nextLine[4]); - financialTransactionImport.setCodeEntryBook(nextLine[5]); - - financialTransactions.put(num, financialTransactionImport); - } - - /** - * Import and create entries Structure : TYPE | NumTransac | Description | - * Amount | Debit | Lettering | Detail | Voucher | Position | Account - * - * @param nextLine - * @param entries - */ - protected void importEntriesCSV(String[] nextLine, - Map<Integer, List<EntryImport>> entries) { - int num = new Integer(nextLine[1]); - - EntryImport entryImport = new EntryImportImpl(); - entryImport.setDescription(StringUtils.trimToNull(nextLine[2])); - entryImport.setAmount(nextLine[3]); - entryImport.setDebit(nextLine[4]); - entryImport.setLettering(StringUtils.trimToNull(nextLine[5])); - entryImport.setDetail(StringUtils.trimToNull(nextLine[6])); - entryImport.setVoucher(StringUtils.trimToNull(nextLine[7])); - entryImport.setPosition(StringUtils.trimToNull(nextLine[8])); - entryImport.setAccount(nextLine[9]); - - if (entries.containsKey(num)) { - List<EntryImport> entryImports = entries.get(num); - entryImports.add(entryImport); - } else { - List<EntryImport> entryImports = new ArrayList<EntryImport>(); - entryImports.add(entryImport); - entries.put(num, entryImports); - } - } - - /** - * @throws TopiaException - * @deprecated do only one method import without bean use (and remove beans) - */ - @Deprecated - protected String createVatStatements(Map<String, List<VatStatementImport>> vatStatements) { - - StringBuilder result = new StringBuilder(); - - while (vatStatements.size() > 0) { - for (Iterator<List<VatStatementImport>> itr = vatStatements - .values().iterator(); itr.hasNext(); ) { - List<VatStatementImport> vatStatementImports = - itr.next(); - - for (Iterator<VatStatementImport> itr2 = vatStatementImports.iterator(); itr2.hasNext(); ) { - VatStatementImport vatStatementImport = - itr2.next(); - String masterVatStatementLabel = vatStatementImport - .getMasterVatStatement(); - VatStatement masterVatStatement = vatStatementService.findVatStatementByLabel(masterVatStatementLabel); - - if (masterVatStatementLabel.equals("") - || masterVatStatement != null) { - // create it - VatStatement vatStatement = new VatStatementImpl(); - vatStatement.setBoxName(vatStatementImport - .getBoxName()); - vatStatement.setLabel(vatStatementImport - .getLabel()); - vatStatement.setAccounts(vatStatementImport - .getAccounts()); - vatStatement.setHeader(Boolean - .parseBoolean(vatStatementImport - .getHeader())); - - vatStatementService - .createVatStatement( - masterVatStatement, - vatStatement); - - result.append(t("lima-business.import.vatstatementadded", - vatStatementImport.getLabel())); - - itr2.remove(); - } else if (!vatStatements - .containsKey(masterVatStatementLabel)) { - result.append(t("lima-business.import.vatstatementalnomaster", - vatStatementImport.getLabel(), - masterVatStatementLabel)); - itr2.remove(); - } - } - if (vatStatementImports.isEmpty()) { - itr.remove(); - } - } - } - - return result.toString(); - } - - protected String createFiscalPeriod(List<FiscalPeriod> fiscalPeriods) { - StringBuilder result = new StringBuilder(); - for (FiscalPeriod fiscalPeriod : fiscalPeriods) { - // create fiscalPeriod - try { - fiscalPeriodService.createFiscalPeriod(fiscalPeriod); - result.append(t("lima-business.import.fiscalperiodadded", - fiscalPeriod.getBeginDate(), - fiscalPeriod.getEndDate())); - } catch (BeginAfterEndFiscalPeriodException e) { - result.append("Can't import " + t("lima-business.import.FiscalPeriod.error.beginAfterEndFiscalPeriod")); - } catch (MoreOneUnlockFiscalPeriodException e) { - result.append("Can't import " + t("lima-business.import.FiscalPeriod.error.moreOneUnlockFiscalPeriod")); - } catch (NotBeginNextDayOfLastFiscalPeriodException e) { - result.append("Can't import " + t("lima-business.import.FiscalPeriod.error.notBeginNextDayOfLastFiscalPeriod")); - } - } - return result.toString(); - } - - /** - * @throws ParseException - * @throws TopiaException - * @deprecated do only one method import without bean use (and remove beans) - */ - @Deprecated - protected String updateClosedPeriodicEntryBooks( - List<ClosedPeriodicEntryBookImport> closedPeriodicEntryBooks) { - StringBuilder result = new StringBuilder(); - - for (ClosedPeriodicEntryBookImport closedPeriodicEntryBookImport : closedPeriodicEntryBooks) { - // update closedPeriodicEntryBook - try { - Date beginDateFinancialPeriod = SDATEFORMAT - .parse(closedPeriodicEntryBookImport - .getBeginDateFinancialPeriod()); - Date endDateFinancialPeriod = SDATEFORMAT - .parse(closedPeriodicEntryBookImport - .getEndDateFinancialPeriod()); - FinancialPeriod financialPeriod = financialPeriodService.getFinancialPeriodByNaturalIds(beginDateFinancialPeriod, endDateFinancialPeriod); - - String codeEntryBook = closedPeriodicEntryBookImport - .getCodeEntryBook(); - EntryBook entryBook = entryBookService.getEntryBookByCode(codeEntryBook); - ClosedPeriodicEntryBook closedPeriodicEntryBook = closedPeriodicEntryBookService.getByEntryBookAndFinancialPeriod(entryBook, - financialPeriod); - - financialPeriodService - .blockClosedPeriodicEntryBook(closedPeriodicEntryBook); - result.append(t("lima-business.import.closedperiodicentrybookupdated", - beginDateFinancialPeriod, endDateFinancialPeriod, codeEntryBook)); - } catch (ParseException e) { - result.append(t("lima-business.common.failed", e.getMessage())); - } catch (UnbalancedFinancialTransactionsException e) { - result.append(t("lima-business.common.failed", t("lima-business.import.closedPeriodicEntryBook.error.unbalanced"))); - } catch (UnfilledEntriesException e) { - result.append(t("lima-business.common.failed", t("lima-business.import.closedPeriodicEntryBook.error.unfilled"))); - } catch (WithoutEntryBookFinancialTransactionsException e) { - result.append(t("lima-business.common.failed", t("lima-business.import.closedPeriodicEntryBook.error.withoutEntryBook"))); - } catch (NotLockedClosedPeriodicEntryBooksException e) { - result.append(t("lima-business.common.failed", t("lima-business.import.closedPeriodicEntryBook.error.NotLockedPreviousEntryBook"))); - } - } - - return result.toString(); - } - - /** - * @deprecated do only one method import without bean use (and remove beans) - */ - @Deprecated - protected String createFinancialTransactionsAndEntries( - Map<Integer, FinancialTransactionImport> financialTransactions, - Map<Integer, List<EntryImport>> entries) { - - StringBuilder result = new StringBuilder(); - - for (Map.Entry<Integer, FinancialTransactionImport> map : financialTransactions - .entrySet()) { - try { - FinancialTransactionImport financialTransactionImport = map - .getValue(); - FinancialTransaction financialTransaction = new FinancialTransactionImpl(); - Date dateFinancialTransaction = null; - - dateFinancialTransaction = SDATEFORMAT - .parse(financialTransactionImport.getDate()); - financialTransaction - .setTransactionDate(dateFinancialTransaction); - - EntryBook entryBook = entryBookService.getEntryBookByCode(financialTransactionImport - .getCodeEntryBook()); - financialTransaction.setEntryBook(entryBook); - - financialTransactionService.createFinancialTransaction(financialTransaction); - - List<EntryImport> entryImports = entries.get(map.getKey()); - for (EntryImport entryImport : entryImports) { - Entry entry = new EntryImpl(); - Account account = accountService.getAccountByNumber(entryImport.getAccount()); - entry.setAccount(account); - entry.setDescription(StringUtils.trimToNull(entryImport.getDescription())); - entry.setAmount(new BigDecimal(entryImport.getAmount())); - entry.setDebit(Boolean.parseBoolean(entryImport.getDebit())); - entry.setLettering(StringUtils.trimToNull(entryImport.getLettering())); - entry.setDetail(StringUtils.trimToNull(entryImport.getDetail())); - entry.setVoucher(StringUtils.trimToNull(entryImport.getVoucher())); - entry.setPosition(StringUtils.trimToNull(entryImport.getPosition())); - entryService.createEntry(entry); - financialTransaction.addEntry(entry); - } - } catch (ParseException e) { - result.append(t("lima-business.common.failed", e.getMessage())); - } catch (LockedFinancialPeriodException e) { - result.append(t("lima-business.common.failed", t("lima-business.import.FinancialTransaction.error.LockedFinancialPeriod"))); - } catch (LockedEntryBookException e) { - result.append(t("lima-business.common.failed", t("lima-business.import.FinancialTransaction.error.LockedEntryBook"))); - } - - } - return result.toString(); - } - protected String importIdentity(String[] nextLine) { StringBuilder result = new StringBuilder(); Modified: trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/NewExportServiceImpl.java =================================================================== --- trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/NewExportServiceImpl.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/NewExportServiceImpl.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -35,12 +35,14 @@ import org.chorem.lima.business.api.FinancialStatementService; import org.chorem.lima.business.api.FinancialTransactionService; import org.chorem.lima.business.api.NewExportService; +import org.chorem.lima.business.api.VatStatementService; import org.chorem.lima.business.ejb.csv.AccountModel; import org.chorem.lima.business.ejb.csv.EntryBookModel; import org.chorem.lima.business.ejb.csv.EntryModel; import org.chorem.lima.business.ejb.csv.FinancialStatementModel; import org.chorem.lima.business.ejb.csv.FinancialTransactionModel; import org.chorem.lima.business.ejb.csv.FiscalPeriodModel; +import org.chorem.lima.business.ejb.csv.VatStatementModel; import org.chorem.lima.entity.Account; import org.chorem.lima.entity.AccountTopiaDao; import org.chorem.lima.entity.Entry; @@ -52,6 +54,7 @@ import org.chorem.lima.entity.FinancialTransactionTopiaDao; import org.chorem.lima.entity.FiscalPeriod; import org.chorem.lima.entity.FiscalPeriodTopiaDao; +import org.chorem.lima.entity.VatStatement; import org.nuiton.csv.Export; import javax.ejb.EJB; @@ -93,6 +96,9 @@ @EJB protected FinancialStatementService financialStatementService; + @EJB + protected VatStatementService vatStatementService; + public static final String JAVA_IO_TMPDIR = "java.io.tmpdir"; @Override @@ -249,10 +255,10 @@ } @Override - public String exportFinancialStatement(String charset) throws Exception { + public String exportFinancialStatements(String charset) throws Exception { String stResult = null; String tmpDir = System.getProperty(JAVA_IO_TMPDIR)+"/"; - File fileResult = new File(tmpDir + "masterFinancialStatements.csv"); + File fileResult = new File(tmpDir + "financialStatements.csv"); List<FinancialStatement> rootFinancialStatements = financialStatementService.getRootFinancialStatements(); if (rootFinancialStatements != null) { @@ -277,4 +283,32 @@ return result; } + @Override + public String exportVatStatements(String charset) throws Exception { + String stResult = null; + String tmpDir = System.getProperty(JAVA_IO_TMPDIR)+"/"; + File fileResult = new File(tmpDir + "vatStatements.csv"); + + List<VatStatement> rootVatStatements = vatStatementService.getRootVatStatements(); + if (rootVatStatements != null) { + VatStatementModel model = new VatStatementModel(); + List<VatStatement> vatStatements = new ArrayList<>(); + getAllSubVATStatements(vatStatements, rootVatStatements); + Export.exportToFile(model, vatStatements, fileResult, Charset.forName(charset)); + FileInputStream inputStream = new FileInputStream(fileResult); + stResult = IOUtils.toString(inputStream); + + } + return stResult; + } + + public List<VatStatement> getAllSubVATStatements(List<VatStatement> result, Collection<VatStatement> subVATStatements) { + if (subVATStatements != null) { + for (VatStatement subVATStatement : subVATStatements) { + result.add(subVATStatement); + getAllSubVATStatements(result, subVATStatement.getSubVatStatements()); + } + } + return result; + } } Modified: trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/NewImportServiceImpl.java =================================================================== --- trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/NewImportServiceImpl.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/NewImportServiceImpl.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -26,8 +26,10 @@ import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.StringUtils; import org.chorem.lima.beans.FinancialStatementImport; +import org.chorem.lima.beans.VatStatementImport; import org.chorem.lima.business.AlreadyExistAccountException; -import org.chorem.lima.business.AlreadyExistFinancialTransaction; +import org.chorem.lima.business.AlreadyExistFinancialStatement; +import org.chorem.lima.business.AlreadyExistVatStatement; import org.chorem.lima.business.FiscalPeriodException; import org.chorem.lima.business.ImportResult; import org.chorem.lima.business.InvalidAccountNumberException; @@ -42,18 +44,21 @@ import org.chorem.lima.business.api.FinancialTransactionService; import org.chorem.lima.business.api.FiscalPeriodService; import org.chorem.lima.business.api.NewImportService; +import org.chorem.lima.business.api.VatStatementService; import org.chorem.lima.business.ejb.csv.AccountModel; import org.chorem.lima.business.ejb.csv.EntryBookModel; import org.chorem.lima.business.ejb.csv.EntryModel; import org.chorem.lima.business.ejb.csv.FinancialStatementModel; import org.chorem.lima.business.ejb.csv.FinancialTransactionModel; import org.chorem.lima.business.ejb.csv.FiscalPeriodModel; +import org.chorem.lima.business.ejb.csv.VatStatementModel; import org.chorem.lima.entity.Account; import org.chorem.lima.entity.Entry; import org.chorem.lima.entity.EntryBook; import org.chorem.lima.entity.FinancialStatement; import org.chorem.lima.entity.FinancialTransaction; import org.chorem.lima.entity.FiscalPeriod; +import org.chorem.lima.entity.VatStatement; import org.nuiton.csv.Import; import org.nuiton.csv.ImportModel; import org.nuiton.util.beans.Binder; @@ -95,6 +100,9 @@ @EJB protected FinancialStatementService financialStatementService; + @EJB + protected VatStatementService vatStatementService; + protected static final Predicate<FinancialStatement> IS_ROOT_FINANCIAL_STATEMENT = new Predicate<FinancialStatement>() { @Override @@ -229,7 +237,7 @@ return result; } - protected FinancialStatement returnFinancialStatement (FinancialStatement rootFinancialStatement, String subFinancialStatementLabel) throws AlreadyExistFinancialTransaction, NotAllowedLabel { + protected FinancialStatement returnFinancialStatement (FinancialStatement rootFinancialStatement, String subFinancialStatementLabel) throws AlreadyExistFinancialStatement, NotAllowedLabel { Collection<FinancialStatement> subFinancialStatements = rootFinancialStatement.getSubFinancialStatements(); FinancialStatement targetedFinancialStatement = null; @@ -342,6 +350,7 @@ Binder<FinancialStatement, FinancialStatement> rootBinder = BinderFactory.newBinder(FinancialStatement.class, FinancialStatement.class); rootBinder.copyExcluding(bfs, financialStatement, FinancialStatement.PROPERTY_SUB_FINANCIAL_STATEMENTS); alreadyCreated = true; + break; } } } @@ -361,7 +370,7 @@ } result.increaseCreated(); lineIndex++; - } catch (AlreadyExistFinancialTransaction e) { + } catch (AlreadyExistFinancialStatement e) { result.getException().addException(lineIndex, e); } catch (NotAllowedLabel e) { result.getException().addException(lineIndex, e); @@ -374,7 +383,153 @@ return result; } + protected VatStatement returnVATStatement (VatStatement rootVATStatement, String subVATStatementLabel) throws AlreadyExistVatStatement, NotAllowedLabel { + Collection<VatStatement> subVatStatements = rootVATStatement.getSubVatStatements(); + VatStatement targetedVATStatement = null; + + // look for vatStatement from tree range + if (subVatStatements != null) { + for (VatStatement subVatStatement : subVatStatements) { + if(subVatStatement.getLabel().equals(subVATStatementLabel)){ + targetedVATStatement = subVatStatement; + break; + } + } + } + + // + if (targetedVATStatement == null) { + // not found, we need to create it + targetedVATStatement = vatStatementService.newVatStatement(); + targetedVATStatement.setLabel(subVATStatementLabel); + // create targetedVATStatement and rootVATStatement if needed + targetedVATStatement = vatStatementService.createVatStatement(rootVATStatement, targetedVATStatement); + targetedVATStatement.getMasterVatStatement(); + } + return targetedVATStatement; + } + + protected VatStatement returnRootVATStatement(VatStatement vatStatement) { + VatStatement rootVatStatement = null; + while (rootVatStatement == null) { + if (vatStatement.getMasterVatStatement() == null){ + rootVatStatement = vatStatement; + } else { + vatStatement = vatStatement.getMasterVatStatement(); + } + } + return rootVatStatement; + } + @Override + public ImportResult importVATStatementsAsCSV(String contents) { + ImportResult result = new ImportResult(); + + // import and save VATStatements + InputStream contentStream = IOUtils.toInputStream(contents); + try { + ImportModel<VatStatementImport> model = new VatStatementModel(); + + Import<VatStatementImport> vatStatementImports = Import.newImport(model, contentStream); + + // path, vatStatement + Map<String, VatStatement> orderedVATStatements = new HashMap<>(); + + List<VatStatement> rootVatStatements = vatStatementService.getRootVatStatements(); + for (VatStatement vatStatement : rootVatStatements) { + orderedVATStatements.put(vatStatement.getLabel(), vatStatement); + } + + int lineIndex = 0; + for (VatStatementImport vatStatementBean : vatStatementImports) { + Binder<VatStatementImport, VatStatement> binder = BinderFactory.newBinder(VatStatementImport.class, VatStatement.class); + VatStatement vatStatement = vatStatementService.newVatStatement(); + binder.copyExcluding(vatStatementBean, vatStatement, VatStatement.PROPERTY_MASTER_VAT_STATEMENT); + + try{ + // full path to master + String masterPath = vatStatementBean.getMasterVatStatement(); + + if (StringUtils.isBlank(masterPath)) { + // case of vatStatement is root + // look if root exists + // It can not have several vatStatement with the same from same path + VatStatement rootVATStatement = orderedVATStatements.get(vatStatementBean.getLabel()); + + if (rootVATStatement == null) { + rootVATStatement = vatStatement; + rootVATStatement = vatStatementService.createVatStatement(null, rootVATStatement); + } else { + // in case it exist (not ordered import and previously created) values are bind to the previously created one excepted + // the sub vatStatements + Binder<VatStatement, VatStatement> rootBinder = BinderFactory.newBinder(VatStatement.class, VatStatement.class); + rootBinder.copyExcluding(vatStatement, rootVATStatement, VatStatement.PROPERTY_SUB_VAT_STATEMENTS); + } + orderedVATStatements.put(rootVATStatement.getLabel(), rootVATStatement); + } else { + String[] masterNames = masterPath.split("/"); + String rootMasterName = masterNames[0]; + + VatStatement rootVATStatement = orderedVATStatements.get(rootMasterName); + + // case of not ordered import and subVATStatement is looking for it's master that has not been created yet + if (rootVATStatement == null) { + rootVATStatement = vatStatementService.newVatStatement(); + rootVATStatement.setLabel(rootMasterName); + rootVATStatement = vatStatementService.createVatStatement(null, rootVATStatement); + orderedVATStatements.put(rootMasterName, rootVATStatement); + } + + // explore branches to find the vatStatement's master one + VatStatement branchesVATStatement = rootVATStatement; + for (int i = 1; i < masterNames.length; i++) {// 0 is root + String masterName = masterNames[i]; + branchesVATStatement = returnVATStatement(branchesVATStatement, masterName); + } + + // in case it exist (not ordered import and previously created) values are bind to the previously created one excepted + // the sub vatStatements + boolean alreadyCreated = false; + if (branchesVATStatement != null && branchesVATStatement.getSubVatStatements() != null) { + for (VatStatement bfs : branchesVATStatement.getSubVatStatements()) { + if (bfs.getLabel().equals(vatStatement.getLabel())){ + Binder<VatStatement, VatStatement> rootBinder = BinderFactory.newBinder(VatStatement.class, VatStatement.class); + rootBinder.copyExcluding(bfs, vatStatement, VatStatement.PROPERTY_SUB_VAT_STATEMENTS); + alreadyCreated = true; + break; + } + } + } + + // if necessary vatStatement is created + if (!alreadyCreated) { + // if the master vatStatement has been modified then the current one is replace by the new one. + vatStatement = vatStatementService.createVatStatement(branchesVATStatement, vatStatement); + VatStatement targetedRootVATStatement = returnRootVATStatement(vatStatement); + + // replace modified root vatStatement with new one + if (orderedVATStatements.get(targetedRootVATStatement.getLabel()) != null) { + orderedVATStatements.put(targetedRootVATStatement.getLabel(), targetedRootVATStatement); + } + } + + } + result.increaseCreated(); + lineIndex++; + } catch (AlreadyExistVatStatement e) { + result.getException().addException(lineIndex, e); + } catch (NotAllowedLabel e) { + result.getException().addException(lineIndex, e); + } + } + + } finally { + IOUtils.closeQuietly(contentStream); + } + return result; + } + + @Override public List<ImportResult> importBackup(String entryBooks, String financialTransactions, String fiscalPeriods, String accounts, String entries) throws AlreadyExistAccountException, InvalidAccountNumberException { List<ImportResult> results = new ArrayList<ImportResult>(); importAccountAsCSV(accounts); Modified: trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/VatStatementServiceImpl.java =================================================================== --- trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/VatStatementServiceImpl.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/VatStatementServiceImpl.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -24,18 +24,25 @@ */ package org.chorem.lima.business.ejb; +import com.google.common.base.Function; +import com.google.common.collect.Lists; +import com.google.common.collect.Maps; import org.chorem.lima.beans.ReportsDatas; import org.chorem.lima.beans.VatStatementAmounts; import org.chorem.lima.beans.VatStatementAmountsImpl; import org.chorem.lima.beans.VatStatementDatas; import org.chorem.lima.beans.VatStatementDatasImpl; +import org.chorem.lima.business.AlreadyExistVatStatement; import org.chorem.lima.business.LimaException; +import org.chorem.lima.business.NotAllowedLabel; import org.chorem.lima.business.api.AccountService; import org.chorem.lima.business.api.ReportService; import org.chorem.lima.business.api.VatStatementService; import org.chorem.lima.entity.Account; import org.chorem.lima.entity.VatStatement; import org.chorem.lima.entity.VatStatementTopiaDao; +import org.nuiton.util.beans.Binder; +import org.nuiton.util.beans.BinderFactory; import javax.ejb.EJB; import javax.ejb.Remote; @@ -43,8 +50,10 @@ import javax.ejb.TransactionAttribute; import java.math.BigDecimal; import java.util.ArrayList; +import java.util.Collection; import java.util.Date; import java.util.List; +import java.util.Map; /** * Permet d'implémenter le plan de la déclaration de TVA @@ -62,25 +71,68 @@ @EJB private AccountService accountService; - @Override - public void createVatStatement(VatStatement masterVatStatement, - VatStatement vatStatement) { + protected static final Function<VatStatement, String> GET_LABEL = new Function<VatStatement, String>() { + @Override + public String apply(VatStatement input) { + return input == null ? null : input.getLabel(); + } + }; - VatStatementTopiaDao vatStatementTopiaDao = getDaoHelper().getVatStatementDao(); + protected void validateNewVATStatement(VatStatement masterVatStatement, VatStatement vatStatement) throws AlreadyExistVatStatement, NotAllowedLabel { + if (vatStatement.getLabel().contains("/")) { + throw new NotAllowedLabel(vatStatement.getLabel()); + } + if (masterVatStatement != null) { + Collection<VatStatement> masterSubVatStatements = masterVatStatement.getSubVatStatements(); + if (masterSubVatStatements == null) { + masterSubVatStatements = Lists.newArrayList(); + } + Map indexedSubVatStatements = Maps.uniqueIndex(masterSubVatStatements, GET_LABEL); + if (indexedSubVatStatements.get(vatStatement.getLabel()) != null){ + throw new AlreadyExistVatStatement(vatStatement.getLabel(), masterVatStatement.getLabel()); + } + } + } - vatStatementTopiaDao.create(vatStatement); - VatStatement mastervatStatementUpdate = null; + protected void addVatStatementToMaster(VatStatement masterVatStatement, + VatStatement vatStatement) { if (masterVatStatement != null) { - mastervatStatementUpdate = vatStatementTopiaDao.forLabelEquals(masterVatStatement.getLabel()).findUniqueOrNull(); + VatStatementTopiaDao vatStatementTopiaDao = getDaoHelper().getVatStatementDao(); + + masterVatStatement.addSubVatStatements(vatStatement); + + if (masterVatStatement.isPersisted()) { + // update the persisted entity to avoid NonUniqueObjectException: A different object with the same identifier value was already associated with the session + VatStatement vatStatementToUpdate = vatStatementTopiaDao.forTopiaIdEquals(masterVatStatement.getTopiaId()).findUnique(); + Binder<VatStatement, VatStatement> binder = BinderFactory.newBinder(VatStatement.class, VatStatement.class); + binder.copy(masterVatStatement, vatStatementToUpdate); + vatStatementTopiaDao.update(vatStatementToUpdate); + } else { + vatStatementTopiaDao.create(masterVatStatement); + } } + } - // check if parent account exist; - if (mastervatStatementUpdate != null) { - mastervatStatementUpdate.addSubVatStatements(vatStatement); - vatStatementTopiaDao.update(mastervatStatementUpdate); + + @Override + public VatStatement createVatStatement(VatStatement masterVatStatement, + VatStatement vatStatement) throws AlreadyExistVatStatement, NotAllowedLabel { + + validateNewVATStatement(masterVatStatement, vatStatement); + + VatStatementTopiaDao vatStatementTopiaDao = getDaoHelper().getVatStatementDao(); + + VatStatement result; + if (!vatStatement.isPersisted()) { + result = vatStatementTopiaDao.create(vatStatement); + } else { + result = vatStatement; } + addVatStatementToMaster(masterVatStatement, result); + + return result; } @Override @@ -271,8 +323,8 @@ // remove vatstatement VatStatement vatStatementToDelete = - vatStatementTopiaDao.findByTopiaId( - vatStatement.getTopiaId()); + vatStatementTopiaDao.forTopiaIdEquals( + vatStatement.getTopiaId()).findUnique(); vatStatementTopiaDao.delete(vatStatementToDelete); //get all subVatStatement @@ -284,8 +336,8 @@ if (vatStatements.size() > 0) { for (VatStatement subVatStatement : vatStatements) { VatStatement subVatStatementToDelete = - vatStatementTopiaDao.findByTopiaId( - subVatStatement.getTopiaId()); + vatStatementTopiaDao.forTopiaIdEquals( + subVatStatement.getTopiaId()).findUnique(); vatStatementTopiaDao.delete(subVatStatementToDelete); } } @@ -306,4 +358,22 @@ removeVatStatement(vatStatement); } } + + @Override + public List<VatStatement> getRootVatStatements() { + VatStatementTopiaDao vatStatementTopiaDao = getDaoHelper().getVatStatementDao(); + + List<VatStatement> result = vatStatementTopiaDao + .forMasterVatStatementEquals(null) + .setOrderByArguments(VatStatement.PROPERTY_TOPIA_CREATE_DATE) + .findAll(); + return result; + } + + @Override + public VatStatement newVatStatement() { + VatStatementTopiaDao vatStatementTopiaDao = getDaoHelper().getVatStatementDao(); + VatStatement result = vatStatementTopiaDao.newInstance(); + return result; + } } Modified: trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/csv/AbstractLimaModel.java =================================================================== --- trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/csv/AbstractLimaModel.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/csv/AbstractLimaModel.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -33,6 +33,7 @@ import org.chorem.lima.entity.EntryBook; import org.chorem.lima.entity.FinancialStatement; import org.chorem.lima.entity.FinancialTransaction; +import org.chorem.lima.entity.VatStatement; import org.nuiton.csv.ValueFormatter; import org.nuiton.csv.ValueParser; import org.nuiton.csv.ext.AbstractImportModel; @@ -355,17 +356,31 @@ } }; - protected static final ValueFormatter<FinancialStatement> MASTER_FINANCIAL_STATEMENT_TO_MASTER_FINANCIAL_STATEMENT_LABEL_FORMATTER = new ValueFormatter<FinancialStatement>() { + protected static final ValueFormatter<FinancialStatement> MASTER_FINANCIAL_STATEMENT_PATH_FORMATTER = new ValueFormatter<FinancialStatement>() { @Override public String format(FinancialStatement value) { - String result = value == null ? "" : getFullPath(value); + String result = value == null ? "" : getFinancialStatementFullPath(value); return result; } }; - protected static final String getFullPath(FinancialStatement value) { - String result = value.getMasterFinancialStatement() != null ? getFullPath(value.getMasterFinancialStatement()) + "/" + value.getLabel() : value.getLabel(); + protected static final String getFinancialStatementFullPath(FinancialStatement value) { + String result = value.getMasterFinancialStatement() != null ? getFinancialStatementFullPath(value.getMasterFinancialStatement()) + "/" + value.getLabel() : value.getLabel(); return result; } + + protected static final String getVatFullPath(VatStatement value) { + String result = value.getMasterVatStatement() != null ? getVatFullPath(value.getMasterVatStatement()) + "/" + value.getLabel() : value.getLabel(); + return result; + } + + protected static final ValueFormatter<VatStatement> MASTER_VAT_PATH_FORMATTER = new ValueFormatter<VatStatement>() { + + @Override + public String format(VatStatement value) { + String result = value == null ? "" : getVatFullPath(value); + return result; + } + }; } Modified: trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/csv/FinancialStatementModel.java =================================================================== --- trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/csv/FinancialStatementModel.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/csv/FinancialStatementModel.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -3,7 +3,6 @@ import org.chorem.lima.beans.FinancialStatementImport; import org.chorem.lima.beans.FinancialStatementImportImpl; import org.chorem.lima.entity.FinancialStatement; -import org.chorem.lima.entity.FinancialStatementImpl; import org.nuiton.csv.ExportModel; import org.nuiton.csv.ExportableColumn; import org.nuiton.csv.ModelBuilder; @@ -39,15 +38,13 @@ modelBuilder.newColumnForExport("provisionDeprecationAccounts", FinancialStatement.PROPERTY_PROVISION_DEPRECATION_ACCOUNTS); modelBuilder.newColumnForExport("subAmount", FinancialStatement.PROPERTY_SUB_AMOUNT, O_N_FORMATTER); modelBuilder.newColumnForExport("headerAmount", FinancialStatement.PROPERTY_HEADER_AMOUNT,O_N_FORMATTER); - modelBuilder.newColumnForExport("masterFinancialStatement", FinancialStatement.PROPERTY_MASTER_FINANCIAL_STATEMENT, MASTER_FINANCIAL_STATEMENT_TO_MASTER_FINANCIAL_STATEMENT_LABEL_FORMATTER); + modelBuilder.newColumnForExport("masterFinancialStatement", FinancialStatement.PROPERTY_MASTER_FINANCIAL_STATEMENT, MASTER_FINANCIAL_STATEMENT_PATH_FORMATTER); modelBuilder.newColumnForExport("financialStatementWay", FinancialStatement.PROPERTY_WAY, FINANCIAL_STATEMENT_WAY_ENUM_VALUE_FORMATTER); return (Iterable) modelBuilder.getColumnsForExport(); } @Override public FinancialStatementImport newEmptyInstance() { - FinancialStatementImpl financialStatement = new FinancialStatementImpl(); -// allFinancialStatements.add(financialStatement); return new FinancialStatementImportImpl(); } } Copied: trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/csv/VatStatementModel.java (from rev 3875, trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/csv/FinancialStatementModel.java) =================================================================== --- trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/csv/VatStatementModel.java (rev 0) +++ trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/csv/VatStatementModel.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -0,0 +1,41 @@ +package org.chorem.lima.business.ejb.csv; + +import org.chorem.lima.beans.VatStatementImport; +import org.chorem.lima.beans.VatStatementImportImpl; +import org.chorem.lima.entity.VatStatement; +import org.nuiton.csv.ExportModel; +import org.nuiton.csv.ExportableColumn; +import org.nuiton.csv.ModelBuilder; + +/** + * Created by davidcosse on 28/07/14. + */ +public class VatStatementModel extends AbstractLimaModel<VatStatementImport> implements ExportModel<VatStatement> { + + public VatStatementModel() { + super(';'); + newMandatoryColumn("label", VatStatement.PROPERTY_LABEL); + newOptionalColumn("header", VatStatement.PROPERTY_HEADER, O_N_PARSER); + newOptionalColumn("accounts", VatStatement.PROPERTY_ACCOUNTS); + newOptionalColumn("boxName", VatStatement.PROPERTY_BOX_NAME); + newOptionalColumn("masterVATStatement", VatStatement.PROPERTY_MASTER_VAT_STATEMENT); + } + + @Override + public Iterable<ExportableColumn<VatStatement, Object>> getColumnsForExport() { + ModelBuilder<VatStatement> modelBuilder = new ModelBuilder<>(); + + modelBuilder.newColumnForExport("label", VatStatement.PROPERTY_LABEL); + modelBuilder.newColumnForExport("header", VatStatement.PROPERTY_HEADER, O_N_FORMATTER); + modelBuilder.newColumnForExport("accounts", VatStatement.PROPERTY_ACCOUNTS); + modelBuilder.newColumnForExport("boxName", VatStatement.PROPERTY_BOX_NAME); + modelBuilder.newColumnForExport("masterVATStatement", VatStatement.PROPERTY_MASTER_VAT_STATEMENT, MASTER_VAT_PATH_FORMATTER); + return (Iterable) modelBuilder.getColumnsForExport(); + } + + @Override + public VatStatementImport newEmptyInstance() { + VatStatementImport vatStatementImport = new VatStatementImportImpl(); + return vatStatementImport; + } +} Modified: trunk/lima-business/src/test/java/org/chorem/lima/business/AbstractLimaTest.java =================================================================== --- trunk/lima-business/src/test/java/org/chorem/lima/business/AbstractLimaTest.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business/src/test/java/org/chorem/lima/business/AbstractLimaTest.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -39,6 +39,7 @@ import org.chorem.lima.business.api.NewExportService; import org.chorem.lima.business.api.NewImportService; import org.chorem.lima.business.api.ReportService; +import org.chorem.lima.business.api.VatStatementService; import org.chorem.lima.entity.Account; import org.chorem.lima.entity.AccountImpl; import org.chorem.lima.entity.Entry; @@ -99,6 +100,7 @@ protected NewImportService newImportService; protected NewExportService newExportService; protected FinancialStatementService financialStatementService; + protected VatStatementService vatStatementService; protected LimaCallaoTopiaApplicationContext context; @@ -137,6 +139,7 @@ importService = LimaServiceFactory.getService(ImportService.class); entryService = LimaServiceFactory.getService(EntryService.class); financialStatementService = LimaServiceFactory.getService(FinancialStatementService.class); + vatStatementService = LimaServiceFactory.getService(VatStatementService.class); newImportService = LimaServiceFactory.getService(NewImportService.class); newExportService = LimaServiceFactory.getService(NewExportService.class); Modified: trunk/lima-business/src/test/java/org/chorem/lima/business/ImportServiceImplTest.java =================================================================== --- trunk/lima-business/src/test/java/org/chorem/lima/business/ImportServiceImplTest.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business/src/test/java/org/chorem/lima/business/ImportServiceImplTest.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -24,7 +24,6 @@ package org.chorem.lima.business; import org.apache.commons.io.IOUtils; -import org.chorem.lima.business.utils.ImportExportEntityEnum; import org.chorem.lima.entity.Account; import org.chorem.lima.entity.FiscalPeriod; import org.chorem.lima.entity.FiscalPeriodImpl; @@ -125,42 +124,4 @@ Assert.assertNotNull(employeAccount); } - /** - * Do some test on imported accounts. - * - * @throws Exception - */ - @Test - public void testImportEntryBookEBP() throws Exception { - importEBPData(); - - Assert.assertNotNull(entryBookService.getEntryBookByCode("AN")); - Assert.assertNotNull(entryBookService.getEntryBookByCode("BQ")); - } - - /** - * Test que les import csv fourni avec lima s'import bien. - * @throws Exception - */ - @Test - public void testImportCSVPCG() throws Exception { - createNewTestContext().createSchema(); - - String pcg = IOUtils.toString(ImportServiceImplTest.class.getResourceAsStream("/import/pcg_base.csv")); - importService.importAsCSV(pcg, ImportExportEntityEnum.ACCOUNT); - Assert.assertEquals(461, accountService.getAccountCount()); - } - - /** - * Test que les import csv fourni avec lima s'import bien. - * @throws Exception - */ - @Test - public void testImportCSVEb() throws Exception { - createNewTestContext().createSchema(); - - String pcg = IOUtils.toString(ImportServiceImplTest.class.getResourceAsStream("/import/eb_default.csv")); - importService.importAsCSV(pcg, ImportExportEntityEnum.ENTRYBOOK); - Assert.assertEquals(5, entryBookService.getAllEntryBooks().size()); - } } Modified: trunk/lima-business/src/test/java/org/chorem/lima/business/NewImportExportServiceTest.java =================================================================== --- trunk/lima-business/src/test/java/org/chorem/lima/business/NewImportExportServiceTest.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business/src/test/java/org/chorem/lima/business/NewImportExportServiceTest.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -317,4 +317,19 @@ subFinancialStatements = bilanActifStatement.getSubFinancialStatements(); Assert.assertEquals(6, subFinancialStatements.size()); } + + //vat_shortened.csv + @Test + public void testImportVATStatementsAsCSV() throws Exception { + // not ordered csv import file + String bcr_developed = IOUtils.toString(ImportServiceImplTest.class.getResourceAsStream("/import/vat_shortened.csv")); + + ImportResult result; + + result = newImportService.importVATStatementsAsCSV(bcr_developed); + + Assert.assertTrue(result.getException().getAllExceptionsByLine().isEmpty()); + Assert.assertEquals(55, result.getNbCreated()); + Assert.assertEquals(55, vatStatementService.getAllVatStatements().size()); + } } Added: trunk/lima-business/src/test/resources/import/vat_shortened.csv =================================================================== --- trunk/lima-business/src/test/resources/import/vat_shortened.csv (rev 0) +++ trunk/lima-business/src/test/resources/import/vat_shortened.csv 2014-07-31 12:01:23 UTC (rev 3880) @@ -0,0 +1,56 @@ +label;header;accounts;boxName;masterVATStatement +OPERATIONS IMPOSABLES (H.T.);O;;;A. MONTANT DES OPERATIONS REALISEES +Acquisitions intracommunautaires;N;;b4.b4;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Livraisons de gaz naturel ou d'électricité imposables en France;N;;b5.b5;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Achats de biens ou de prestations de services réalisées auprès d'un assujetti non établi en France;N;;b6.b6;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Régularisations (imposables);N;;b7.b7;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +"Ventes, prestations de services";N;;b1.b1;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +B. DECOMPTE DE LA TVA A PAYER;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services" +TVA BRUTE;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER" +Opérations réalisées en France métropolitaine;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +"Taux normal 19,6% (Base hors taxe)";N;;b15.b15;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux normal 19,6% (Taxe due)";N;;b23.b23;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux réduit 5,5% (Base hors taxe)";N;;b16.b16;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux réduit 5,5% (Taxe due)";N;;b24.b24;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +Opérations réalisées dans les DOM;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +"Taux normal 8,5% (Base hors taxe)";N;;b18.b18;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux normal 8,5% (Taxe due)";N;;b26.b26;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux réduit 2,1% (Base hors taxe)";N;;b19.b19;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux réduit 2,1% (Taxe due)";N;;b27.b27;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +Opérations imposables à un autre taux (France métropolitaine ou DOM);O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Ancien taux (Base hors taxe);N;;b21.b21;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Ancien taux (Taxe due);N;;b29.b29;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Opérations imposables à un taux particulier (Base hors taxe);N;;b22.b22;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Opérations imposables à un taux particulier (Taxe due);N;;b30.b30;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +TVA antérieurement déduite à reverser;N;;b31.b31;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Total de le TVA brute due;N;;b32.b32;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Dont TVA sur acquisitions intracommunautaires;N;;b33.b33;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Dont TVA sur opérations à destination de Monaco;N;;b34.b34;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +TVA DEDUCTIBLE;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER" +Biens constituant des immobilisations;N;;b35.b35;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autres biens et services;N;;b36.b36;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autre TVA à déduire;N;;b37.b37;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Report du crédit apparaissant ligne 27 de la précédente déclaration;N;;b38.b38;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Total TVA déductible;N;;total1.total1;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Dont TVA non perçue récupérable par les assujettis disposant d'un établissement stable dans les DOM;N;;b39.b39;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autres opérations imposables;N;;b2.b2;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +CREDIT;O;;;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables +Crédit de TVA;N;;b40.b40;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Remboursement demandé sur formulaire n°3519;N;;b41.b41;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Crédit à reporter;N;;b42.b42;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Achats de prestations de services intracommunautaires;N;;b3.b3;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +TAXE A PAYER;O;;;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires +TVA nette due;N;;b43.b43;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +Taxes assimilées calculées sur annexe n°3310 A;N;;b44.b44;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +"Sommes à imputer, exprimées en euros, y compris acompte congés";N;;b45.b45;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +"Sommes à ajouter, exprimées en euros, y compris acompte congés";N;;b46.b46;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +Total à payer;N;;b47.b47;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +OPERATIONS NON IMPOSABLES;O;;;A. MONTANT DES OPERATIONS REALISEES +Exportations hors CE;N;;b8.b8;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Autres opérations non imposables;N;;b9.b9;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Livraisons intracommunautaires;N;;b10.b10;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Livraisons de gaz naturel ou d'électricité non imposables en France;N;;b11.b11;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Achats de franchise;N;;b12.b12;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Ventes de biens ou prestations de services réalisées aurpès d'un assujetti non établi en France;N;;b13.b13;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Régularisations (non imposables);N;;b14.b14;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +A. MONTANT DES OPERATIONS REALISEES;O;;; Copied: trunk/lima-business-api/src/main/java/org/chorem/lima/business/AlreadyExistFinancialStatement.java (from rev 3879, trunk/lima-business-api/src/main/java/org/chorem/lima/business/AlreadyExistFinancialTransaction.java) =================================================================== --- trunk/lima-business-api/src/main/java/org/chorem/lima/business/AlreadyExistFinancialStatement.java (rev 0) +++ trunk/lima-business-api/src/main/java/org/chorem/lima/business/AlreadyExistFinancialStatement.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -0,0 +1,24 @@ +package org.chorem.lima.business; + +/** + * Created by davidcosse on 28/07/14. + */ +public class AlreadyExistFinancialStatement extends LimaException { + private static final long serialVersionUID = 4816249386192290272L; + + protected String financialStatementLabel; + protected String masterLabel; + + public AlreadyExistFinancialStatement(String label, String masterLabel) { + this.financialStatementLabel = label; + this.masterLabel = masterLabel; + } + + public String getFinancialStatementLabel() { + return financialStatementLabel; + } + + public String getMasterLabel() { + return masterLabel; + } +} Deleted: trunk/lima-business-api/src/main/java/org/chorem/lima/business/AlreadyExistFinancialTransaction.java =================================================================== --- trunk/lima-business-api/src/main/java/org/chorem/lima/business/AlreadyExistFinancialTransaction.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business-api/src/main/java/org/chorem/lima/business/AlreadyExistFinancialTransaction.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -1,24 +0,0 @@ -package org.chorem.lima.business; - -/** - * Created by davidcosse on 28/07/14. - */ -public class AlreadyExistFinancialTransaction extends LimaException { - private static final long serialVersionUID = 4816249386192290272L; - - protected String financialTransactionLabel; - protected String masterLabel; - - public AlreadyExistFinancialTransaction(String label, String masterLabel) { - this.financialTransactionLabel = label; - this.masterLabel = masterLabel; - } - - public String getFinancialTransactionLabel() { - return financialTransactionLabel; - } - - public String getMasterLabel() { - return masterLabel; - } -} Copied: trunk/lima-business-api/src/main/java/org/chorem/lima/business/AlreadyExistVatStatement.java (from rev 3879, trunk/lima-business-api/src/main/java/org/chorem/lima/business/AlreadyExistFinancialTransaction.java) =================================================================== --- trunk/lima-business-api/src/main/java/org/chorem/lima/business/AlreadyExistVatStatement.java (rev 0) +++ trunk/lima-business-api/src/main/java/org/chorem/lima/business/AlreadyExistVatStatement.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -0,0 +1,24 @@ +package org.chorem.lima.business; + +/** + * Created by davidcosse on 28/07/14. + */ +public class AlreadyExistVatStatement extends LimaException { + private static final long serialVersionUID = 4816249386192290272L; + + protected String vatStatementLabel; + protected String masterLabel; + + public AlreadyExistVatStatement(String label, String masterLabel) { + this.vatStatementLabel = label; + this.masterLabel = masterLabel; + } + + public String getVatStatementLabel() { + return vatStatementLabel; + } + + public String getMasterLabel() { + return masterLabel; + } +} Modified: trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/FinancialStatementService.java =================================================================== --- trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/FinancialStatementService.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/FinancialStatementService.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -26,7 +26,7 @@ package org.chorem.lima.business.api; import org.chorem.lima.beans.FinancialStatementAmounts; -import org.chorem.lima.business.AlreadyExistFinancialTransaction; +import org.chorem.lima.business.AlreadyExistFinancialStatement; import org.chorem.lima.business.LimaException; import org.chorem.lima.business.NotAllowedLabel; import org.chorem.lima.entity.Account; @@ -46,7 +46,7 @@ void createMasterFinacialStatements(FinancialStatement masterFinancialStatements); FinancialStatement createFinancialStatement(FinancialStatement masterFinancialStatement, - FinancialStatement financialStatement) throws AlreadyExistFinancialTransaction, NotAllowedLabel; + FinancialStatement financialStatement) throws AlreadyExistFinancialStatement, NotAllowedLabel; void updateFinancialStatement(FinancialStatement financialStatement); Modified: trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/NewExportService.java =================================================================== --- trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/NewExportService.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/NewExportService.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -48,5 +48,7 @@ String exportEntriesAsCSV(String charset, Boolean humanReadable); - String exportFinancialStatement(String charset) throws Exception; + String exportFinancialStatements(String charset) throws Exception; + + String exportVatStatements(String charset) throws Exception; } Modified: trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/NewImportService.java =================================================================== --- trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/NewImportService.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/NewImportService.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -43,5 +43,7 @@ ImportResult importFinancialStatementsAsCSV(String contents); + ImportResult importVATStatementsAsCSV(String contents); + List<ImportResult> importBackup(String entryBooks, String transactions, String fiscalPeriods, String accounts, String entries) throws AlreadyExistAccountException, InvalidAccountNumberException; } Modified: trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/VatStatementService.java =================================================================== --- trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/VatStatementService.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-business-api/src/main/java/org/chorem/lima/business/api/VatStatementService.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -25,7 +25,9 @@ package org.chorem.lima.business.api; import org.chorem.lima.beans.VatStatementAmounts; +import org.chorem.lima.business.AlreadyExistVatStatement; import org.chorem.lima.business.LimaException; +import org.chorem.lima.business.NotAllowedLabel; import org.chorem.lima.entity.VatStatement; import java.util.Date; @@ -33,8 +35,8 @@ public interface VatStatementService { - void createVatStatement(VatStatement masterVatStatement, - VatStatement vatStatement); + VatStatement createVatStatement(VatStatement masterVatStatement, + VatStatement vatStatement) throws AlreadyExistVatStatement, NotAllowedLabel; List<VatStatement> getAllVatStatements(); @@ -66,5 +68,7 @@ */ boolean checkVatStatementExist(String label); + List<VatStatement> getRootVatStatements(); + VatStatement newVatStatement(); } \ No newline at end of file Modified: trunk/lima-callao/src/main/xmi/accounting-model.zargo =================================================================== (Binary files differ) Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialstatementchart/FinancialStatementChartTreeTableModel.java =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialstatementchart/FinancialStatementChartTreeTableModel.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialstatementchart/FinancialStatementChartTreeTableModel.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -29,7 +29,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.chorem.lima.LimaConfig; -import org.chorem.lima.business.AlreadyExistFinancialTransaction; +import org.chorem.lima.business.AlreadyExistFinancialStatement; import org.chorem.lima.business.NotAllowedLabel; import org.chorem.lima.business.api.FinancialStatementService; import org.chorem.lima.entity.FinancialStatement; @@ -213,11 +213,11 @@ try { financialStatementService.createFinancialStatement( parentFinancialStatementHeader, financialStatement); - } catch (AlreadyExistFinancialTransaction alreadyExistFinancialTransaction) { + } catch (AlreadyExistFinancialStatement alreadyExistFinancialStatement) { errorHelper.showErrorMessage(t("lima.importexport.import.alreadyExistFinancialStatement", - alreadyExistFinancialTransaction.getFinancialTransactionLabel(), alreadyExistFinancialTransaction.getMasterLabel())); + alreadyExistFinancialStatement.getFinancialStatementLabel(), alreadyExistFinancialStatement.getMasterLabel())); } catch (NotAllowedLabel notAllowedLabel) { - errorHelper.showErrorMessage(t("lima.importexport.import.alreadyExistFinancialStatement", + errorHelper.showErrorMessage(t("lima.financialstatement.notAllowedLabel", notAllowedLabel.getLabel())); } modelSupport.fireTreeStructureChanged(path); Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -46,16 +46,8 @@ import org.chorem.lima.util.ErrorHelper; import org.jdesktop.swingx.painter.BusyPainter; -import javax.swing.JComboBox; -import javax.swing.JFileChooser; -import javax.swing.JLabel; -import javax.swing.JOptionPane; -import javax.swing.JPanel; -import javax.swing.SwingWorker; -import java.awt.BorderLayout; -import java.awt.Color; -import java.awt.Component; -import java.awt.Container; +import javax.swing.*; +import java.awt.*; import java.io.BufferedWriter; import java.io.ByteArrayInputStream; import java.io.File; @@ -169,15 +161,19 @@ break; case CSV_FINANCIALSTATEMENTS_EXPORT: try { - datas = newExportService.exportFinancialStatement(charset.name()); + datas = newExportService.exportFinancialStatements(charset.name()); createFile(filePath, charset.name(), datas); } catch (Exception e) { e.printStackTrace(); } break; case CSV_VAT_EXPORT: - datas = exportService.exportVatStatementChartAsCSV(); - createFile(filePath, charset.name(), datas); + try { + datas = newExportService.exportVatStatements(charset.name()); + createFile(filePath, charset.name(), datas); + } catch (Exception e) { + e.printStackTrace(); + } break; case EBP_ACCOUNTCHARTS_EXPORT: //For windows ebp @@ -219,7 +215,9 @@ break; case CSV_VAT_IMPORT: datas = extractFile(filePath, charset.name()); - result = importService.importAsCSV(datas, ImportExportEntityEnum.VATSTATEMENT); + importResult = newImportService.importVATStatementsAsCSV(datas); + // TODO DCossé 24/07/14 change result + result = "SUCCESS"; break; case PDF_VAT_IMPORT: int response = JOptionPane.showConfirmDialog(waitView, Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/opening/OpeningViewHandler.java =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/opening/OpeningViewHandler.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/opening/OpeningViewHandler.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -25,15 +25,6 @@ package org.chorem.lima.ui.opening; -import static org.nuiton.i18n.I18n.t; - -import java.awt.Color; - -import javax.swing.BorderFactory; -import javax.swing.JPanel; -import javax.swing.border.Border; -import javax.swing.border.EmptyBorder; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.chorem.lima.business.LimaException; @@ -49,6 +40,13 @@ import org.chorem.lima.ui.identity.IdentityHandler; import org.chorem.lima.ui.importexport.ImportExport; +import javax.swing.*; +import javax.swing.border.Border; +import javax.swing.border.EmptyBorder; +import java.awt.*; + +import static org.nuiton.i18n.I18n.t; + public class OpeningViewHandler { private static final Log log = LogFactory.getLog(OpeningViewHandler.class); @@ -147,6 +145,7 @@ //Import vatstatement switch (defaultAccountsChartEnum) { case SHORTENED: + // TODO DCossé 31/07/14 why vat_base, default developped and shortened file have got same contents ? importExport.importExport(ImportExportEnum.CSV_VAT_IMPORT, VatStatementsChartEnum.SHORTENED.getFilePath(), false); break; Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatchart/VatChartTreeTableModel.java =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatchart/VatChartTreeTableModel.java 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatchart/VatChartTreeTableModel.java 2014-07-31 12:01:23 UTC (rev 3880) @@ -26,10 +26,13 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.chorem.lima.business.AlreadyExistVatStatement; +import org.chorem.lima.business.NotAllowedLabel; import org.chorem.lima.business.api.VatStatementService; import org.chorem.lima.entity.VatStatement; import org.chorem.lima.entity.VatStatementImpl; import org.chorem.lima.service.LimaServiceFactory; +import org.chorem.lima.util.ErrorHelper; import org.jdesktop.swingx.treetable.AbstractTreeTableModel; import javax.swing.tree.TreePath; @@ -45,6 +48,8 @@ /** Services. */ protected final VatStatementService vatStatementService; + protected ErrorHelper errorHelper; + /** Model constructor. Initiate account service used here. */ public VatChartTreeTableModel() { //create root for the tree @@ -172,8 +177,16 @@ parentVatStatementHeader = (VatStatement) path.getLastPathComponent(); } - vatStatementService.createVatStatement( - parentVatStatementHeader, vatStatement); + try { + vatStatementService.createVatStatement( + parentVatStatementHeader, vatStatement); + } catch (AlreadyExistVatStatement alreadyExistVatStatement) { + errorHelper.showErrorMessage(t("lima.importexport.import.alreadyExistFinancialStatement", + alreadyExistVatStatement.getVatStatementLabel(), alreadyExistVatStatement.getMasterLabel())); + } catch (NotAllowedLabel notAllowedLabel) { + errorHelper.showErrorMessage(t("lima.importexport.import.alreadyExistFinancialStatement", + notAllowedLabel.getLabel())); + } modelSupport.fireTreeStructureChanged(path); } Modified: trunk/lima-swing/src/main/resources/i18n/lima-swing_fr_FR.properties =================================================================== --- trunk/lima-swing/src/main/resources/i18n/lima-swing_fr_FR.properties 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-swing/src/main/resources/i18n/lima-swing_fr_FR.properties 2014-07-31 12:01:23 UTC (rev 3880) @@ -311,6 +311,7 @@ lima.importexport.export= lima.importexport.export.terminated= lima.importexport.import.alreadyExistFinancialStatement= +lima.importexport.import.alreadyExistVatStatement= lima.importexport.usevatpdf=Êtes-vous sûr de vouloir utiliser ce pdf pour la déclaration de TVA ? lima.init.closed=Lima fermé à %1$s lima.init.errorclosing=Erreur lors de la fermeture Modified: trunk/lima-swing/src/main/resources/import/vat_base.csv =================================================================== --- trunk/lima-swing/src/main/resources/import/vat_base.csv 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-swing/src/main/resources/import/vat_base.csv 2014-07-31 12:01:23 UTC (rev 3880) @@ -1,71 +1,56 @@ -/** - * vatstatement Structure : TYPE | boxName | label | header | accounts | masterVatStatement - * - * boxName: name used to identify the box inside a pdf (String, can be empty) - * label: description (String) - * header: (true if it is a masterVatStatement, false otherwise) - * accounts: list of accounts amounts to find the amount (account numbers separate by a comma, can be empty) - * masterVatStatement: copy of the master label (String, can be empty) - * - * boxName : identifiant de la cellule dans un pdf (chaîne de caractères, vide si inexistant) - * label : libellé descriptif (chaîne de caractères) - * header : indique si la ligne contient des sous-ensembles (vrai si c'est un compte de TVA parent --> true, sinon faux --> false) - * accounts : liste des comptes utilisés pour calculer la somme (numéro des comptes séparés par des virgules, peut être vide) - * masterVatStatement : copie du label de la ligne parent (chaîne de caractères, peut être vide) - * - **/ -"VAT";"";"A. MONTANT DES OPERATIONS REALISEES";"true";"";"" -"VAT";"";"OPERATIONS IMPOSABLES (H.T.)";"true";"";"A. MONTANT DES OPERATIONS REALISEES" -"VAT";"b1.b1";"Ventes, prestations de services";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b2.b2";"Autres opérations imposables";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b3.b3";"Achats de prestations de services intracommunautaires";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b4.b4";"Acquisitions intracommunautaires";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b5.b5";"Livraisons de gaz naturel ou d'électricité imposables en France";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b6.b6";"Achats de biens ou de prestations de services réalisées auprès d'un assujetti non établi en France";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b7.b7";"Régularisations (imposables)";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"";"OPERATIONS NON IMPOSABLES";"true";"";"A. MONTANT DES OPERATIONS REALISEES" -"VAT";"b8.b8";"Exportations hors CE";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b9.b9";"Autres opérations non imposables";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b10.b10";"Livraisons intracommunautaires";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b11.b11";"Livraisons de gaz naturel ou d'électricité non imposables en France";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b12.b12";"Achats de franchise";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b13.b13";"Ventes de biens ou prestations de services réalisées aurpès d'un assujetti non établi en France";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b14.b14";"Régularisations (non imposables)";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"";"B. DECOMPTE DE LA TVA A PAYER";"true";"";"" -"VAT";"";"TVA BRUTE";"true";"";"B. DECOMPTE DE LA TVA A PAYER" -"VAT";"";"Opérations réalisées en France métropolitaine";"true";"";"TVA BRUTE" -"VAT";"b15.b15";"Taux normal 19,6% (Base hors taxe)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"b23.b23";"Taux normal 19,6% (Taxe due)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"b16.b16";"Taux réduit 5,5% (Base hors taxe)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"b24.b24";"Taux réduit 5,5% (Taxe due)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"";"Opérations réalisées dans les DOM";"true";"";"TVA BRUTE" -"VAT";"b18.b18";"Taux normal 8,5% (Base hors taxe)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"b26.b26";"Taux normal 8,5% (Taxe due)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"b19.b19";"Taux réduit 2,1% (Base hors taxe)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"b27.b27";"Taux réduit 2,1% (Taxe due)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)";"true";"";"TVA BRUTE" -"VAT";"b21.b21";"Ancien taux (Base hors taxe)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b29.b29";"Ancien taux (Taxe due)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b22.b22";"Opérations imposables à un taux particulier (Base hors taxe)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b30.b30";"Opérations imposables à un taux particulier (Taxe due)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b31.b31";"TVA antérieurement déduite à reverser";"false";"";"TVA BRUTE" -"VAT";"b32.b32";"Total de le TVA brute due";"false";"";"TVA BRUTE" -"VAT";"b33.b33";"Dont TVA sur acquisitions intracommunautaires";"false";"";"TVA BRUTE" -"VAT";"b34.b34";"Dont TVA sur opérations à destination de Monaco";"false";"";"TVA BRUTE" -"VAT";"";"TVA DEDUCTIBLE";"true";"";"B. DECOMPTE DE LA TVA A PAYER" -"VAT";"b35.b35";"Biens constituant des immobilisations";"false";"";"TVA DEDUCTIBLE" -"VAT";"b36.b36";"Autres biens et services";"false";"";"TVA DEDUCTIBLE" -"VAT";"b37.b37";"Autre TVA à déduire";"false";"";"TVA DEDUCTIBLE" -"VAT";"b38.b38";"Report du crédit apparaissant ligne 27 de la précédente déclaration";"false";"";"TVA DEDUCTIBLE" -"VAT";"total1.total1";"Total TVA déductible";"false";"";"TVA DEDUCTIBLE" -"VAT";"b39.b39";"Dont TVA non perçue récupérable par les assujettis disposant d'un établissement stable dans les DOM";"false";"";"TVA DEDUCTIBLE" -"VAT";"";"CREDIT";"true";"";"" -"VAT";"b40.b40";"Crédit de TVA";"false";"";"CREDIT" -"VAT";"b41.b41";"Remboursement demandé sur formulaire n°3519";"false";"";"CREDIT" -"VAT";"b42.b42";"Crédit à reporter";"false";"";"CREDIT" -"VAT";"";"TAXE A PAYER";"true";"";"" -"VAT";"b43.b43";"TVA nette due";"false";"";"TAXE A PAYER" -"VAT";"b44.b44";"Taxes assimilées calculées sur annexe n°3310 A";"false";"";"TAXE A PAYER" -"VAT";"b45.b45";"Sommes à imputer, exprimées en euros, y compris acompte congés";"false";"";"TAXE A PAYER" -"VAT";"b46.b46";"Sommes à ajouter, exprimées en euros, y compris acompte congés";"false";"";"TAXE A PAYER" -"VAT";"b47.b47";"Total à payer";"false";"";"TAXE A PAYER" +label;header;accounts;boxName;masterVATStatement +A. MONTANT DES OPERATIONS REALISEES;O;;; +OPERATIONS IMPOSABLES (H.T.);O;;;A. MONTANT DES OPERATIONS REALISEES +Acquisitions intracommunautaires;N;;b4.b4;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Livraisons de gaz naturel ou d'électricité imposables en France;N;;b5.b5;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Achats de biens ou de prestations de services réalisées auprès d'un assujetti non établi en France;N;;b6.b6;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Régularisations (imposables);N;;b7.b7;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +"Ventes, prestations de services";N;;b1.b1;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +B. DECOMPTE DE LA TVA A PAYER;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services" +TVA BRUTE;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER" +Opérations réalisées en France métropolitaine;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +"Taux normal 19,6% (Base hors taxe)";N;;b15.b15;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux normal 19,6% (Taxe due)";N;;b23.b23;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux réduit 5,5% (Base hors taxe)";N;;b16.b16;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux réduit 5,5% (Taxe due)";N;;b24.b24;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +Opérations réalisées dans les DOM;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +"Taux normal 8,5% (Base hors taxe)";N;;b18.b18;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux normal 8,5% (Taxe due)";N;;b26.b26;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux réduit 2,1% (Base hors taxe)";N;;b19.b19;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux réduit 2,1% (Taxe due)";N;;b27.b27;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +Opérations imposables à un autre taux (France métropolitaine ou DOM);O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Ancien taux (Base hors taxe);N;;b21.b21;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Ancien taux (Taxe due);N;;b29.b29;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Opérations imposables à un taux particulier (Base hors taxe);N;;b22.b22;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Opérations imposables à un taux particulier (Taxe due);N;;b30.b30;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +TVA antérieurement déduite à reverser;N;;b31.b31;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Total de le TVA brute due;N;;b32.b32;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Dont TVA sur acquisitions intracommunautaires;N;;b33.b33;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Dont TVA sur opérations à destination de Monaco;N;;b34.b34;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +TVA DEDUCTIBLE;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER" +Biens constituant des immobilisations;N;;b35.b35;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autres biens et services;N;;b36.b36;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autre TVA à déduire;N;;b37.b37;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Report du crédit apparaissant ligne 27 de la précédente déclaration;N;;b38.b38;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Total TVA déductible;N;;total1.total1;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Dont TVA non perçue récupérable par les assujettis disposant d'un établissement stable dans les DOM;N;;b39.b39;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autres opérations imposables;N;;b2.b2;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +CREDIT;O;;;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables +Crédit de TVA;N;;b40.b40;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Remboursement demandé sur formulaire n°3519;N;;b41.b41;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Crédit à reporter;N;;b42.b42;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Achats de prestations de services intracommunautaires;N;;b3.b3;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +TAXE A PAYER;O;;;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires +TVA nette due;N;;b43.b43;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +Taxes assimilées calculées sur annexe n°3310 A;N;;b44.b44;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +"Sommes à imputer, exprimées en euros, y compris acompte congés";N;;b45.b45;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +"Sommes à ajouter, exprimées en euros, y compris acompte congés";N;;b46.b46;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +Total à payer;N;;b47.b47;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +OPERATIONS NON IMPOSABLES;O;;;A. MONTANT DES OPERATIONS REALISEES +Exportations hors CE;N;;b8.b8;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Autres opérations non imposables;N;;b9.b9;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Livraisons intracommunautaires;N;;b10.b10;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Livraisons de gaz naturel ou d'électricité non imposables en France;N;;b11.b11;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Achats de franchise;N;;b12.b12;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Ventes de biens ou prestations de services réalisées aurpès d'un assujetti non établi en France;N;;b13.b13;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Régularisations (non imposables);N;;b14.b14;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES Modified: trunk/lima-swing/src/main/resources/import/vat_default.csv =================================================================== --- trunk/lima-swing/src/main/resources/import/vat_default.csv 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-swing/src/main/resources/import/vat_default.csv 2014-07-31 12:01:23 UTC (rev 3880) @@ -1,71 +1,56 @@ -/** - * vatstatement Structure : TYPE | boxName | label | header | accounts | masterVatStatement - * - * boxName: name used to identify the box inside a pdf (String, can be empty) - * label: description (String) - * header: (true if it is a masterVatStatement, false otherwise) - * accounts: list of accounts amounts to find the amount (account numbers separate by a comma, can be empty) - * masterVatStatement: copy of the master label (String, can be empty) - * - * boxName : identifiant de la cellule dans un pdf (chaîne de caractères, vide si inexistant) - * label : libellé descriptif (chaîne de caractères) - * header : indique si la ligne contient des sous-ensembles (vrai si c'est un compte de TVA parent --> true, sinon faux --> false) - * accounts : liste des comptes utilisés pour calculer la somme (numéro des comptes séparés par des virgules, peut être vide) - * masterVatStatement : copie du label de la ligne parent (chaîne de caractères, peut être vide) - * - **/ -"VAT";"";"A. MONTANT DES OPERATIONS REALISEES";"true";"";"" -"VAT";"";"OPERATIONS IMPOSABLES (H.T.)";"true";"";"A. MONTANT DES OPERATIONS REALISEES" -"VAT";"b1.b1";"Ventes, prestations de services";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b2.b2";"Autres opérations imposables";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b3.b3";"Achats de prestations de services intracommunautaires";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b4.b4";"Acquisitions intracommunautaires";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b5.b5";"Livraisons de gaz naturel ou d'électricité imposables en France";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b6.b6";"Achats de biens ou de prestations de services réalisées auprès d'un assujetti non établi en France";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b7.b7";"Régularisations (imposables)";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"";"OPERATIONS NON IMPOSABLES";"true";"";"A. MONTANT DES OPERATIONS REALISEES" -"VAT";"b8.b8";"Exportations hors CE";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b9.b9";"Autres opérations non imposables";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b10.b10";"Livraisons intracommunautaires";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b11.b11";"Livraisons de gaz naturel ou d'électricité non imposables en France";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b12.b12";"Achats de franchise";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b13.b13";"Ventes de biens ou prestations de services réalisées aurpès d'un assujetti non établi en France";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b14.b14";"Régularisations (non imposables)";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"";"B. DECOMPTE DE LA TVA A PAYER";"true";"";"" -"VAT";"";"TVA BRUTE";"true";"";"B. DECOMPTE DE LA TVA A PAYER" -"VAT";"";"Opérations réalisées en France métropolitaine";"true";"";"TVA BRUTE" -"VAT";"b15.b15";"Taux normal 19,6% (Base hors taxe)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"b23.b23";"Taux normal 19,6% (Taxe due)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"b16.b16";"Taux réduit 5,5% (Base hors taxe)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"b24.b24";"Taux réduit 5,5% (Taxe due)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"";"Opérations réalisées dans les DOM";"true";"";"TVA BRUTE" -"VAT";"b18.b18";"Taux normal 8,5% (Base hors taxe)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"b26.b26";"Taux normal 8,5% (Taxe due)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"b19.b19";"Taux réduit 2,1% (Base hors taxe)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"b27.b27";"Taux réduit 2,1% (Taxe due)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)";"true";"";"TVA BRUTE" -"VAT";"b21.b21";"Ancien taux (Base hors taxe)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b29.b29";"Ancien taux (Taxe due)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b22.b22";"Opérations imposables à un taux particulier (Base hors taxe)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b30.b30";"Opérations imposables à un taux particulier (Taxe due)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b31.b31";"TVA antérieurement déduite à reverser";"false";"";"TVA BRUTE" -"VAT";"b32.b32";"Total de le TVA brute due";"false";"";"TVA BRUTE" -"VAT";"b33.b33";"Dont TVA sur acquisitions intracommunautaires";"false";"";"TVA BRUTE" -"VAT";"b34.b34";"Dont TVA sur opérations à destination de Monaco";"false";"";"TVA BRUTE" -"VAT";"";"TVA DEDUCTIBLE";"true";"";"B. DECOMPTE DE LA TVA A PAYER" -"VAT";"b35.b35";"Biens constituant des immobilisations";"false";"";"TVA DEDUCTIBLE" -"VAT";"b36.b36";"Autres biens et services";"false";"";"TVA DEDUCTIBLE" -"VAT";"b37.b37";"Autre TVA à déduire";"false";"";"TVA DEDUCTIBLE" -"VAT";"b38.b38";"Report du crédit apparaissant ligne 27 de la précédente déclaration";"false";"";"TVA DEDUCTIBLE" -"VAT";"total1.total1";"Total TVA déductible";"false";"";"TVA DEDUCTIBLE" -"VAT";"b39.b39";"Dont TVA non perçue récupérable par les assujettis disposant d'un établissement stable dans les DOM";"false";"";"TVA DEDUCTIBLE" -"VAT";"";"CREDIT";"true";"";"" -"VAT";"b40.b40";"Crédit de TVA";"false";"";"CREDIT" -"VAT";"b41.b41";"Remboursement demandé sur formulaire n°3519";"false";"";"CREDIT" -"VAT";"b42.b42";"Crédit à reporter";"false";"";"CREDIT" -"VAT";"";"TAXE A PAYER";"true";"";"" -"VAT";"b43.b43";"TVA nette due";"false";"";"TAXE A PAYER" -"VAT";"b44.b44";"Taxes assimilées calculées sur annexe n°3310 A";"false";"";"TAXE A PAYER" -"VAT";"b45.b45";"Sommes à imputer, exprimées en euros, y compris acompte congés";"false";"";"TAXE A PAYER" -"VAT";"b46.b46";"Sommes à ajouter, exprimées en euros, y compris acompte congés";"false";"";"TAXE A PAYER" -"VAT";"b47.b47";"Total à payer";"false";"";"TAXE A PAYER" +label;header;accounts;boxName;masterVATStatement +A. MONTANT DES OPERATIONS REALISEES;O;;; +OPERATIONS IMPOSABLES (H.T.);O;;;A. MONTANT DES OPERATIONS REALISEES +Acquisitions intracommunautaires;N;;b4.b4;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Livraisons de gaz naturel ou d'électricité imposables en France;N;;b5.b5;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Achats de biens ou de prestations de services réalisées auprès d'un assujetti non établi en France;N;;b6.b6;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Régularisations (imposables);N;;b7.b7;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +"Ventes, prestations de services";N;;b1.b1;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +B. DECOMPTE DE LA TVA A PAYER;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services" +TVA BRUTE;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER" +Opérations réalisées en France métropolitaine;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +"Taux normal 19,6% (Base hors taxe)";N;;b15.b15;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux normal 19,6% (Taxe due)";N;;b23.b23;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux réduit 5,5% (Base hors taxe)";N;;b16.b16;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux réduit 5,5% (Taxe due)";N;;b24.b24;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +Opérations réalisées dans les DOM;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +"Taux normal 8,5% (Base hors taxe)";N;;b18.b18;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux normal 8,5% (Taxe due)";N;;b26.b26;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux réduit 2,1% (Base hors taxe)";N;;b19.b19;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux réduit 2,1% (Taxe due)";N;;b27.b27;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +Opérations imposables à un autre taux (France métropolitaine ou DOM);O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Ancien taux (Base hors taxe);N;;b21.b21;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Ancien taux (Taxe due);N;;b29.b29;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Opérations imposables à un taux particulier (Base hors taxe);N;;b22.b22;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Opérations imposables à un taux particulier (Taxe due);N;;b30.b30;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +TVA antérieurement déduite à reverser;N;;b31.b31;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Total de le TVA brute due;N;;b32.b32;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Dont TVA sur acquisitions intracommunautaires;N;;b33.b33;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Dont TVA sur opérations à destination de Monaco;N;;b34.b34;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +TVA DEDUCTIBLE;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER" +Biens constituant des immobilisations;N;;b35.b35;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autres biens et services;N;;b36.b36;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autre TVA à déduire;N;;b37.b37;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Report du crédit apparaissant ligne 27 de la précédente déclaration;N;;b38.b38;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Total TVA déductible;N;;total1.total1;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Dont TVA non perçue récupérable par les assujettis disposant d'un établissement stable dans les DOM;N;;b39.b39;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autres opérations imposables;N;;b2.b2;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +CREDIT;O;;;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables +Crédit de TVA;N;;b40.b40;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Remboursement demandé sur formulaire n°3519;N;;b41.b41;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Crédit à reporter;N;;b42.b42;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Achats de prestations de services intracommunautaires;N;;b3.b3;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +TAXE A PAYER;O;;;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires +TVA nette due;N;;b43.b43;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +Taxes assimilées calculées sur annexe n°3310 A;N;;b44.b44;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +"Sommes à imputer, exprimées en euros, y compris acompte congés";N;;b45.b45;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +"Sommes à ajouter, exprimées en euros, y compris acompte congés";N;;b46.b46;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +Total à payer;N;;b47.b47;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +OPERATIONS NON IMPOSABLES;O;;;A. MONTANT DES OPERATIONS REALISEES +Exportations hors CE;N;;b8.b8;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Autres opérations non imposables;N;;b9.b9;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Livraisons intracommunautaires;N;;b10.b10;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Livraisons de gaz naturel ou d'électricité non imposables en France;N;;b11.b11;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Achats de franchise;N;;b12.b12;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Ventes de biens ou prestations de services réalisées aurpès d'un assujetti non établi en France;N;;b13.b13;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Régularisations (non imposables);N;;b14.b14;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES \ No newline at end of file Modified: trunk/lima-swing/src/main/resources/import/vat_developed.csv =================================================================== --- trunk/lima-swing/src/main/resources/import/vat_developed.csv 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-swing/src/main/resources/import/vat_developed.csv 2014-07-31 12:01:23 UTC (rev 3880) @@ -1,71 +1,56 @@ -/** - * vatstatement Structure : TYPE | boxName | label | header | accounts | masterVatStatement - * - * boxName: name used to identify the box inside a pdf (String, can be empty) - * label: description (String) - * header: (true if it is a masterVatStatement, false otherwise) - * accounts: list of accounts amounts to find the amount (account numbers separate by a comma, can be empty) - * masterVatStatement: copy of the master label (String, can be empty) - * - * boxName : identifiant de la cellule dans un pdf (chaîne de caractères, vide si inexistant) - * label : libellé descriptif (chaîne de caractères) - * header : indique si la ligne contient des sous-ensembles (vrai si c'est un compte de TVA parent --> true, sinon faux --> false) - * accounts : liste des comptes utilisés pour calculer la somme (numéro des comptes séparés par des virgules, peut être vide) - * masterVatStatement : copie du label de la ligne parent (chaîne de caractères, peut être vide) - * - **/ -"VAT";"";"A. MONTANT DES OPERATIONS REALISEES";"true";"";"" -"VAT";"";"OPERATIONS IMPOSABLES (H.T.)";"true";"";"A. MONTANT DES OPERATIONS REALISEES" -"VAT";"b1.b1";"Ventes, prestations de services";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b2.b2";"Autres opérations imposables";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b3.b3";"Achats de prestations de services intracommunautaires";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b4.b4";"Acquisitions intracommunautaires";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b5.b5";"Livraisons de gaz naturel ou d'électricité imposables en France";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b6.b6";"Achats de biens ou de prestations de services réalisées auprès d'un assujetti non établi en France";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b7.b7";"Régularisations (imposables)";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"";"OPERATIONS NON IMPOSABLES";"true";"";"A. MONTANT DES OPERATIONS REALISEES" -"VAT";"b8.b8";"Exportations hors CE";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b9.b9";"Autres opérations non imposables";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b10.b10";"Livraisons intracommunautaires";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b11.b11";"Livraisons de gaz naturel ou d'électricité non imposables en France";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b12.b12";"Achats de franchise";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b13.b13";"Ventes de biens ou prestations de services réalisées aurpès d'un assujetti non établi en France";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b14.b14";"Régularisations (non imposables)";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"";"B. DECOMPTE DE LA TVA A PAYER";"true";"";"" -"VAT";"";"TVA BRUTE";"true";"";"B. DECOMPTE DE LA TVA A PAYER" -"VAT";"";"Opérations réalisées en France métropolitaine";"true";"";"TVA BRUTE" -"VAT";"b15.b15";"Taux normal 19,6% (Base hors taxe)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"b23.b23";"Taux normal 19,6% (Taxe due)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"b16.b16";"Taux réduit 5,5% (Base hors taxe)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"b24.b24";"Taux réduit 5,5% (Taxe due)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"";"Opérations réalisées dans les DOM";"true";"";"TVA BRUTE" -"VAT";"b18.b18";"Taux normal 8,5% (Base hors taxe)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"b26.b26";"Taux normal 8,5% (Taxe due)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"b19.b19";"Taux réduit 2,1% (Base hors taxe)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"b27.b27";"Taux réduit 2,1% (Taxe due)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)";"true";"";"TVA BRUTE" -"VAT";"b21.b21";"Ancien taux (Base hors taxe)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b29.b29";"Ancien taux (Taxe due)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b22.b22";"Opérations imposables à un taux particulier (Base hors taxe)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b30.b30";"Opérations imposables à un taux particulier (Taxe due)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b31.b31";"TVA antérieurement déduite à reverser";"false";"";"TVA BRUTE" -"VAT";"b32.b32";"Total de le TVA brute due";"false";"";"TVA BRUTE" -"VAT";"b33.b33";"Dont TVA sur acquisitions intracommunautaires";"false";"";"TVA BRUTE" -"VAT";"b34.b34";"Dont TVA sur opérations à destination de Monaco";"false";"";"TVA BRUTE" -"VAT";"";"TVA DEDUCTIBLE";"true";"";"B. DECOMPTE DE LA TVA A PAYER" -"VAT";"b35.b35";"Biens constituant des immobilisations";"false";"";"TVA DEDUCTIBLE" -"VAT";"b36.b36";"Autres biens et services";"false";"";"TVA DEDUCTIBLE" -"VAT";"b37.b37";"Autre TVA à déduire";"false";"";"TVA DEDUCTIBLE" -"VAT";"b38.b38";"Report du crédit apparaissant ligne 27 de la précédente déclaration";"false";"";"TVA DEDUCTIBLE" -"VAT";"total1.total1";"Total TVA déductible";"false";"";"TVA DEDUCTIBLE" -"VAT";"b39.b39";"Dont TVA non perçue récupérable par les assujettis disposant d'un établissement stable dans les DOM";"false";"";"TVA DEDUCTIBLE" -"VAT";"";"CREDIT";"true";"";"" -"VAT";"b40.b40";"Crédit de TVA";"false";"";"CREDIT" -"VAT";"b41.b41";"Remboursement demandé sur formulaire n°3519";"false";"";"CREDIT" -"VAT";"b42.b42";"Crédit à reporter";"false";"";"CREDIT" -"VAT";"";"TAXE A PAYER";"true";"";"" -"VAT";"b43.b43";"TVA nette due";"false";"";"TAXE A PAYER" -"VAT";"b44.b44";"Taxes assimilées calculées sur annexe n°3310 A";"false";"";"TAXE A PAYER" -"VAT";"b45.b45";"Sommes à imputer, exprimées en euros, y compris acompte congés";"false";"";"TAXE A PAYER" -"VAT";"b46.b46";"Sommes à ajouter, exprimées en euros, y compris acompte congés";"false";"";"TAXE A PAYER" -"VAT";"b47.b47";"Total à payer";"false";"";"TAXE A PAYER" +label;header;accounts;boxName;masterVATStatement +A. MONTANT DES OPERATIONS REALISEES;O;;; +OPERATIONS IMPOSABLES (H.T.);O;;;A. MONTANT DES OPERATIONS REALISEES +Acquisitions intracommunautaires;N;;b4.b4;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Livraisons de gaz naturel ou d'électricité imposables en France;N;;b5.b5;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Achats de biens ou de prestations de services réalisées auprès d'un assujetti non établi en France;N;;b6.b6;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Régularisations (imposables);N;;b7.b7;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +"Ventes, prestations de services";N;;b1.b1;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +B. DECOMPTE DE LA TVA A PAYER;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services" +TVA BRUTE;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER" +Opérations réalisées en France métropolitaine;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +"Taux normal 19,6% (Base hors taxe)";N;;b15.b15;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux normal 19,6% (Taxe due)";N;;b23.b23;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux réduit 5,5% (Base hors taxe)";N;;b16.b16;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux réduit 5,5% (Taxe due)";N;;b24.b24;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +Opérations réalisées dans les DOM;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +"Taux normal 8,5% (Base hors taxe)";N;;b18.b18;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux normal 8,5% (Taxe due)";N;;b26.b26;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux réduit 2,1% (Base hors taxe)";N;;b19.b19;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux réduit 2,1% (Taxe due)";N;;b27.b27;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +Opérations imposables à un autre taux (France métropolitaine ou DOM);O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Ancien taux (Base hors taxe);N;;b21.b21;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Ancien taux (Taxe due);N;;b29.b29;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Opérations imposables à un taux particulier (Base hors taxe);N;;b22.b22;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Opérations imposables à un taux particulier (Taxe due);N;;b30.b30;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +TVA antérieurement déduite à reverser;N;;b31.b31;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Total de le TVA brute due;N;;b32.b32;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Dont TVA sur acquisitions intracommunautaires;N;;b33.b33;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Dont TVA sur opérations à destination de Monaco;N;;b34.b34;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +TVA DEDUCTIBLE;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER" +Biens constituant des immobilisations;N;;b35.b35;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autres biens et services;N;;b36.b36;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autre TVA à déduire;N;;b37.b37;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Report du crédit apparaissant ligne 27 de la précédente déclaration;N;;b38.b38;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Total TVA déductible;N;;total1.total1;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Dont TVA non perçue récupérable par les assujettis disposant d'un établissement stable dans les DOM;N;;b39.b39;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autres opérations imposables;N;;b2.b2;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +CREDIT;O;;;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables +Crédit de TVA;N;;b40.b40;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Remboursement demandé sur formulaire n°3519;N;;b41.b41;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Crédit à reporter;N;;b42.b42;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Achats de prestations de services intracommunautaires;N;;b3.b3;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +TAXE A PAYER;O;;;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires +TVA nette due;N;;b43.b43;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +Taxes assimilées calculées sur annexe n°3310 A;N;;b44.b44;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +"Sommes à imputer, exprimées en euros, y compris acompte congés";N;;b45.b45;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +"Sommes à ajouter, exprimées en euros, y compris acompte congés";N;;b46.b46;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +Total à payer;N;;b47.b47;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +OPERATIONS NON IMPOSABLES;O;;;A. MONTANT DES OPERATIONS REALISEES +Exportations hors CE;N;;b8.b8;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Autres opérations non imposables;N;;b9.b9;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Livraisons intracommunautaires;N;;b10.b10;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Livraisons de gaz naturel ou d'électricité non imposables en France;N;;b11.b11;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Achats de franchise;N;;b12.b12;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Ventes de biens ou prestations de services réalisées aurpès d'un assujetti non établi en France;N;;b13.b13;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Régularisations (non imposables);N;;b14.b14;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES Modified: trunk/lima-swing/src/main/resources/import/vat_shortened.csv =================================================================== --- trunk/lima-swing/src/main/resources/import/vat_shortened.csv 2014-07-31 08:38:23 UTC (rev 3879) +++ trunk/lima-swing/src/main/resources/import/vat_shortened.csv 2014-07-31 12:01:23 UTC (rev 3880) @@ -1,71 +1,56 @@ -/** - * vatstatement Structure : TYPE | boxName | label | header | accounts | masterVatStatement - * - * boxName: name used to identify the box inside a pdf (String, can be empty) - * label: description (String) - * header: (true if it is a masterVatStatement, false otherwise) - * accounts: list of accounts amounts to find the amount (account numbers separate by a comma, can be empty) - * masterVatStatement: copy of the master label (String, can be empty) - * - * boxName : identifiant de la cellule dans un pdf (chaîne de caractères, vide si inexistant) - * label : libellé descriptif (chaîne de caractères) - * header : indique si la ligne contient des sous-ensembles (vrai si c'est un compte de TVA parent --> true, sinon faux --> false) - * accounts : liste des comptes utilisés pour calculer la somme (numéro des comptes séparés par des virgules, peut être vide) - * masterVatStatement : copie du label de la ligne parent (chaîne de caractères, peut être vide) - * - **/ -"VAT";"";"A. MONTANT DES OPERATIONS REALISEES";"true";"";"" -"VAT";"";"OPERATIONS IMPOSABLES (H.T.)";"true";"";"A. MONTANT DES OPERATIONS REALISEES" -"VAT";"b1.b1";"Ventes, prestations de services";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b2.b2";"Autres opérations imposables";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b3.b3";"Achats de prestations de services intracommunautaires";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b4.b4";"Acquisitions intracommunautaires";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b5.b5";"Livraisons de gaz naturel ou d'électricité imposables en France";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b6.b6";"Achats de biens ou de prestations de services réalisées auprès d'un assujetti non établi en France";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"b7.b7";"Régularisations (imposables)";"false";"";"OPERATIONS IMPOSABLES (H.T.)" -"VAT";"";"OPERATIONS NON IMPOSABLES";"true";"";"A. MONTANT DES OPERATIONS REALISEES" -"VAT";"b8.b8";"Exportations hors CE";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b9.b9";"Autres opérations non imposables";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b10.b10";"Livraisons intracommunautaires";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b11.b11";"Livraisons de gaz naturel ou d'électricité non imposables en France";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b12.b12";"Achats de franchise";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b13.b13";"Ventes de biens ou prestations de services réalisées aurpès d'un assujetti non établi en France";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"b14.b14";"Régularisations (non imposables)";"false";"";"OPERATIONS NON IMPOSABLES" -"VAT";"";"B. DECOMPTE DE LA TVA A PAYER";"true";"";"" -"VAT";"";"TVA BRUTE";"true";"";"B. DECOMPTE DE LA TVA A PAYER" -"VAT";"";"Opérations réalisées en France métropolitaine";"true";"";"TVA BRUTE" -"VAT";"b15.b15";"Taux normal 19,6% (Base hors taxe)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"b23.b23";"Taux normal 19,6% (Taxe due)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"b16.b16";"Taux réduit 5,5% (Base hors taxe)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"b24.b24";"Taux réduit 5,5% (Taxe due)";"false";"";"Opérations réalisées en France métropolitaine" -"VAT";"";"Opérations réalisées dans les DOM";"true";"";"TVA BRUTE" -"VAT";"b18.b18";"Taux normal 8,5% (Base hors taxe)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"b26.b26";"Taux normal 8,5% (Taxe due)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"b19.b19";"Taux réduit 2,1% (Base hors taxe)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"b27.b27";"Taux réduit 2,1% (Taxe due)";"false";"";"Opérations réalisées dans les DOM" -"VAT";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)";"true";"";"TVA BRUTE" -"VAT";"b21.b21";"Ancien taux (Base hors taxe)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b29.b29";"Ancien taux (Taxe due)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b22.b22";"Opérations imposables à un taux particulier (Base hors taxe)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b30.b30";"Opérations imposables à un taux particulier (Taxe due)";"false";"";"Opérations imposables à un autre taux (France métropolitaine ou DOM)" -"VAT";"b31.b31";"TVA antérieurement déduite à reverser";"false";"";"TVA BRUTE" -"VAT";"b32.b32";"Total de le TVA brute due";"false";"";"TVA BRUTE" -"VAT";"b33.b33";"Dont TVA sur acquisitions intracommunautaires";"false";"";"TVA BRUTE" -"VAT";"b34.b34";"Dont TVA sur opérations à destination de Monaco";"false";"";"TVA BRUTE" -"VAT";"";"TVA DEDUCTIBLE";"true";"";"B. DECOMPTE DE LA TVA A PAYER" -"VAT";"b35.b35";"Biens constituant des immobilisations";"false";"";"TVA DEDUCTIBLE" -"VAT";"b36.b36";"Autres biens et services";"false";"";"TVA DEDUCTIBLE" -"VAT";"b37.b37";"Autre TVA à déduire";"false";"";"TVA DEDUCTIBLE" -"VAT";"b38.b38";"Report du crédit apparaissant ligne 27 de la précédente déclaration";"false";"";"TVA DEDUCTIBLE" -"VAT";"total1.total1";"Total TVA déductible";"false";"";"TVA DEDUCTIBLE" -"VAT";"b39.b39";"Dont TVA non perçue récupérable par les assujettis disposant d'un établissement stable dans les DOM";"false";"";"TVA DEDUCTIBLE" -"VAT";"";"CREDIT";"true";"";"" -"VAT";"b40.b40";"Crédit de TVA";"false";"";"CREDIT" -"VAT";"b41.b41";"Remboursement demandé sur formulaire n°3519";"false";"";"CREDIT" -"VAT";"b42.b42";"Crédit à reporter";"false";"";"CREDIT" -"VAT";"";"TAXE A PAYER";"true";"";"" -"VAT";"b43.b43";"TVA nette due";"false";"";"TAXE A PAYER" -"VAT";"b44.b44";"Taxes assimilées calculées sur annexe n°3310 A";"false";"";"TAXE A PAYER" -"VAT";"b45.b45";"Sommes à imputer, exprimées en euros, y compris acompte congés";"false";"";"TAXE A PAYER" -"VAT";"b46.b46";"Sommes à ajouter, exprimées en euros, y compris acompte congés";"false";"";"TAXE A PAYER" -"VAT";"b47.b47";"Total à payer";"false";"";"TAXE A PAYER" +label;header;accounts;boxName;masterVATStatement +A. MONTANT DES OPERATIONS REALISEES;O;;; +OPERATIONS IMPOSABLES (H.T.);O;;;A. MONTANT DES OPERATIONS REALISEES +Acquisitions intracommunautaires;N;;b4.b4;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Livraisons de gaz naturel ou d'électricité imposables en France;N;;b5.b5;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Achats de biens ou de prestations de services réalisées auprès d'un assujetti non établi en France;N;;b6.b6;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +Régularisations (imposables);N;;b7.b7;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +"Ventes, prestations de services";N;;b1.b1;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +B. DECOMPTE DE LA TVA A PAYER;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services" +TVA BRUTE;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER" +Opérations réalisées en France métropolitaine;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +"Taux normal 19,6% (Base hors taxe)";N;;b15.b15;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux normal 19,6% (Taxe due)";N;;b23.b23;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux réduit 5,5% (Base hors taxe)";N;;b16.b16;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +"Taux réduit 5,5% (Taxe due)";N;;b24.b24;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées en France métropolitaine" +Opérations réalisées dans les DOM;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +"Taux normal 8,5% (Base hors taxe)";N;;b18.b18;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux normal 8,5% (Taxe due)";N;;b26.b26;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux réduit 2,1% (Base hors taxe)";N;;b19.b19;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +"Taux réduit 2,1% (Taxe due)";N;;b27.b27;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations réalisées dans les DOM" +Opérations imposables à un autre taux (France métropolitaine ou DOM);O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Ancien taux (Base hors taxe);N;;b21.b21;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Ancien taux (Taxe due);N;;b29.b29;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Opérations imposables à un taux particulier (Base hors taxe);N;;b22.b22;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +Opérations imposables à un taux particulier (Taxe due);N;;b30.b30;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE/Opérations imposables à un autre taux (France métropolitaine ou DOM)" +TVA antérieurement déduite à reverser;N;;b31.b31;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Total de le TVA brute due;N;;b32.b32;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Dont TVA sur acquisitions intracommunautaires;N;;b33.b33;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +Dont TVA sur opérations à destination de Monaco;N;;b34.b34;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA BRUTE" +TVA DEDUCTIBLE;O;;;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER" +Biens constituant des immobilisations;N;;b35.b35;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autres biens et services;N;;b36.b36;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autre TVA à déduire;N;;b37.b37;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Report du crédit apparaissant ligne 27 de la précédente déclaration;N;;b38.b38;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Total TVA déductible;N;;total1.total1;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Dont TVA non perçue récupérable par les assujettis disposant d'un établissement stable dans les DOM;N;;b39.b39;"A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Ventes, prestations de services/B. DECOMPTE DE LA TVA A PAYER/TVA DEDUCTIBLE" +Autres opérations imposables;N;;b2.b2;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +CREDIT;O;;;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables +Crédit de TVA;N;;b40.b40;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Remboursement demandé sur formulaire n°3519;N;;b41.b41;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Crédit à reporter;N;;b42.b42;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Autres opérations imposables/CREDIT +Achats de prestations de services intracommunautaires;N;;b3.b3;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.) +TAXE A PAYER;O;;;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires +TVA nette due;N;;b43.b43;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +Taxes assimilées calculées sur annexe n°3310 A;N;;b44.b44;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +"Sommes à imputer, exprimées en euros, y compris acompte congés";N;;b45.b45;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +"Sommes à ajouter, exprimées en euros, y compris acompte congés";N;;b46.b46;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +Total à payer;N;;b47.b47;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS IMPOSABLES (H.T.)/Achats de prestations de services intracommunautaires/TAXE A PAYER +OPERATIONS NON IMPOSABLES;O;;;A. MONTANT DES OPERATIONS REALISEES +Exportations hors CE;N;;b8.b8;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Autres opérations non imposables;N;;b9.b9;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Livraisons intracommunautaires;N;;b10.b10;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Livraisons de gaz naturel ou d'électricité non imposables en France;N;;b11.b11;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Achats de franchise;N;;b12.b12;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Ventes de biens ou prestations de services réalisées aurpès d'un assujetti non établi en France;N;;b13.b13;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES +Régularisations (non imposables);N;;b14.b14;A. MONTANT DES OPERATIONS REALISEES/OPERATIONS NON IMPOSABLES
participants (1)
-
dcosse@users.chorem.org